Oddbean new post about | logout
 Curious, what would you meter? Would you base it on events? Bandwidth? 
 probably # of reqs/subscriptions 
 Anything that  costs real resources. And make it dynamic. So:

* RAM seconds
* CPU seconds
* bandwidth
* HDD MB hours
* ...

With surge pricing during DOS attacks.

The idea is to make the relay pay for itself so the operator can scale it up without fear of increased cost. 
 My idea of an ideal client-server interaction is that the server commits to a certain price for the next hour and the client sends ecash for the expected use, maybe 5min at a time. And the client should know the user's preferences, so if the price surges, the user gets asked to confirm this or to delay the use of this relay accordingly, with the client handling delays gracefully. 
 for strfry specifically, it can "log" the performance metrics but this does not easily equate to being able to measure them from external systems unless you were to ingest the logs and turn them into metrics.  That being said, you could ingest process metrics, disk metrics etc, and use this.  Right now the focus is to use the data currently accessible via the interceptor-proxy such as #REQs/second, #subscriptions and #events, use that to surface the information about how much a particular login/pubkey is 'using' vs other usages, display that to the relay operator so they can make a decision about allowing or blocking.  once this is done, then i can think about cost tiers or etc..