Web continuations seem like a great idea, but now the server is preserving the state of many of my users' requests. What happens if the continuations never actually get called to continue?
RIFE has a WeakHashMap with the continuation ids and their references, so the JVM will free them up if it starts to run out of memory. Also, continuations also have a default timeout of 20 minutes, after which they will become eligible for purging, which happens by default 1 out of 50 requests (this is of course configurable).
Besides that you, can also setup each element to not clone continuations if you don't need that behavior, and last, when a user finishes a flow, you can remove the entire active continuation tree and thus all related state.