[Seaside] Concurrency question
Dale Henrichs
dale.henrichs at gemstone.com
Tue Feb 19 01:20:47 UTC 2008
Jeffrey Straszheim wrote:
> Dale Henrichs wrote:
>> In Squeak, HTTP requests for _different_ sessions are processed
>> concurrently via green threads (a thread is forked for each HTTP
>> request). HTTP requests for the _same_ session are serialized via a
>> session-specific Semaphore.
> Interesting. Is is possible to create multiple sessions for the same
> physical user?
Let's be clear here. When you hit Seaside with an URL like
http://example.com/seaside/examples/counter, Seaside creates a unique
session with an ID that will be embedded in all of the dynamic URLs
generated from there on out for that session. If the same physical users
opens a new tab in the same browser and enters the
http://example.com/seaside/examples/counter again, they will have a
separate Seaside session created, that is totally independent from the
other session.
If the user had clicked on the ++ link for example, she would see an URL
like the following
http://example.com/seaside/examples/counter?_s=lhDEQmkRhiXILSEU&_k=hySRdyan
in the browser. If she copied that URL and mailed it to a colleague (or
pasted it into a separate tab in the browser), then both of them could
issue simultaneous requests against the same session and those requests
would be serialized by the server.
I am less familiar with the ins and outs of Ajax, so I'll let someone
else field the rest of your questions.
Dale
More information about the seaside
mailing list