[plt-scheme] Serializable continuations?

From: vlado (vlado at dikini.net)
Date: Fri Feb 10 09:43:29 EST 2006

> 1. http://cs.brown.edu/~sk/Publications/Papers/Published/pcmkf-cont-from-gen-stack-insp/

Wow, that is some reading :)
Is persistent-web-interaction.ss available somewhere? I would be really
curios to read that.

Regardless of the availability of serializable continuations, it
shouldn't be a real show stopper for load balanced servers.

In what scenarios would you use continuations?
In which of those would you be really hurt if you lose their state?

Generally continuations are used for interactive web-applications. In
most cases they will be emplyed to preserve a state until an certain
interactive workflow cones to an end.

I come to think of them as intermediate states, where the first
send/suspend marks a beggining of a transaction and send/finish the end.
On transaction's end you persist the outcome one way or another, for
example to a db, network, and in order to provide consistency you should
be able to expire all continuations saved during the transaction's run.

In cases like this the serialisation of the continuation is not really
critical, since the overall state of the application is safe, even if
you have a crash. Ok, you will lose your current 'transactions'.

Once again if you look carefully, most of the interactive applications
don't really require load balancing - by interactive I mean
something wich loosely resembles the formentioned "transactions". The 
usage will be mostly viewing and retrieving information, rather than
a series of forms, etc... In cases like this, for load-balanced servers
all you need to do is that you can direct clients to the "update"
server, when 'complex' interactions occur, which shoudln't be a big
problem.

Cheers,
Vlado



Posted on the users mailing list.