On Wed, 2009-07-15 at 09:44 -0400, Bob McWhirter wrote:
For a service that exposes the libcloud API though that storage must be persistent, and not just in memory: otherwise users of the API will get very strange errors when the service is restarted in the middle of one of their sessions. Basically, they'd have to expect a 'sorry, forgot your credentials' error on every API call, and then login again and redo the call.
I think they have to expect *some error* is possible at any time. It might be a 404 Not Found while the service is actually restarting, even if the service does maintain a persistent store of sessions. I think this QoS is more a function of an implementation. You could use ∂-API services without persistence, as long as you're aware of it.
It's not so much what happens while the server restarts - it's that after a restart each user will have an invalid session, so the window of failure is much much bigger.
The only failures (barring bugs) that users should have to worry about are network connectivity problems, which can be resolved by retrying the request - forgetting the credentials is different in that the user needs to login again.
David