Not yet. :) You bring up some good points that I hadn't thought of
yet. The itch I was scratching was how to easily write a web
application for a limited number of users. I wanted to make that task
cheap enough to be something a single programmer could do very
quickly.

OTOH, your comments have sparked a few thoughts. I've got to get the
continuation monad tutorial written and then I may think about them.

Jim

Jim Powers wrote:
> On Sun, Nov 29, 2009 at 7:21 PM, jim <jim.d...@gmail.com> wrote:
>
> > I finally got time to find the bug in my web application framework.
> > Here is the code to the framework:
> >
> > http://intensivesystems.net/tutorials/code/web_session.clj
>
>
> This does indeed look cool, but here's the problem I have with all of the
> continuation-style web-frameworks: they do not scale.  This is to say in a
> web-server farm setting you need a workable stickiness approach since you
> always have to be routed back to the machine with the continuation you need.
>  So:
>
>    - In the case of machine or process failure all state information is
>    lost.
>    - It is pretty easy to wind up with a very unbalanced web farm as due to
>    the randomness of user activity it is possible to have all of your active
>    users load-balanced onto only a few machines.
>    - If you force-ably load balance based on session count you can easily
>    under-utilize your web farm.
>    - Since one of the benefits of continuation-based web frameworks is the
>    amount and richness of the data that can be "transferred" between pages, 
> but
>    this (potentially lots of data) coupled with the problems listed above, can
>    become a serious problem under certain (potentially not-predictable)
>    circumstances.
>
> Clearly what would be desired is portable continuations that can be loaded
> on any machine and/or duplicated/replicated for failure cases.
>
> This said, the web_session code is cool, but any thoughts on addressing the
> more general problems?
>
> --
> Jim Powers

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to