Thoughtworks guys again.
Basic Servlet overview - in-memory sessions don't scale, duh!
Preferred options - state goes into cookies and serialized. Security, legal aspects? Pretty well common to most frameworks these days.
Page composition in the server with proxy server holding StringTemplate objects. Interesting idea - seen variants of this in other places. I'm curious as to whether doing this could mean having a poor man's macro system for Java, since XSLTs can be written to create XSLTs; maybe Velocity templates could similarly generate Velocity templates or StringTemplate -> StringTemplate?
Again, application developers need to have a good idea of caching directives for this to work. One objection I had with this approach is that you potentially increase your hardware requirement and can open the app up to liveness failures here. Request A comes in and is serviced by Thread 1. As part of that, it makes a request to the proxy server for a template. At the proxy server, a cache miss means that another request needs to be made to the app server. Then Request A is tying up 2 app server threads. What about applications which parallelize the requests? They might use more than 2 app server request-handling threads at a time, etc.
Thoughtworks seem to do fun, interesting work.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment