On 16 Nov 2010, at 11:35, David LeBer wrote:

> 
> On 2010-11-15, at 7:09 PM, Ian Joyner wrote:
> 
>> (Not that I'm doing any WO these days, but I still like to follow.)
>> 
>> One thing that has always worried me about scalability is keeping the per 
>> user "application state" on the server in WOSession. Knowing more about REST 
>> now, this is very unrestful and not stateless, which means will not scale.
> 
> I don't see why something being unrestful and not stateless automatically 
> equates to not being able to scale. Perhaps you could explain.

The problem is that once you get 1000s and millions of users you have the 
problem of memory size storing all that session information in memory on the 
server. Server must also manage all these sessions - clean them out every so 
often. And (in middleware systems I worked on in the 80s) keep track of state 
transitions with FSMs, etc.

Yes you need session state, ie context, but it should be kept on the client, 
which sends it along with each request. Thus user state is kept only on the 
client which makes recoverability easier too, because if the server is 
rebooted, client can continue oblivious to any problem.
> 
>> How is this problem dealt with these days? WOnder?
>> 
>> Thanks
>> Ian
>> 
>> On 16 Nov 2010, at 03:43, Greg Lappen wrote:
>> 
>>> Hi everyone,
>>> 
>>> Based on using WO for the last 7 years, I have observed a couple of things 
>>> that seem to be a performance bottleneck in WebObjects.  I know that Apple 
>>> uses WebObjects on a large scale for iTunes and ecommerce, so there must be 
>>> solutions to these.
>>> 
>>> #1 - Only one thread can be processing at once.  I seem to recall that this 
>>> is a limit in EnterpriseObjects but it's been a while.
>>> 
>>> #2 - EnterpriseObjects caches every object from the database.
>>> 
>>> With that being said, how can you horizontally scale your application 
>>> layer?  If you setup more instances of your app, they each have their own 
>>> caches, which will be out of sync with each other.  Is there a commonly 
>>> used framework for doing distributed cache management?  And is it possible 
>>> to make your applications multithreaded so page requests can be processed 
>>> concurrently?
>>> 
>>> Thanks!
>>> 
>>> Greg
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
>>> Help/Unsubscribe/Update your Subscription:
>>> http://lists.apple.com/mailman/options/webobjects-dev/ianjoyner%40me.com
>>> 
>>> This email sent to ianjoy...@me.com
>> 
>> _______________________________________________
>> Do not post admin requests to the list. They will be ignored.
>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
>> Help/Unsubscribe/Update your Subscription:
>> http://lists.apple.com/mailman/options/webobjects-dev/dleber_wodev%40codeferous.com
>> 
>> This email sent to dleber_wo...@codeferous.com
> 
> ;david
> 
> --
> David LeBer
> Codeferous Software
> 'co-def-er-ous' adj. Literally 'code-bearing'
> site:         http://codeferous.com
> blog:         http://davidleber.net
> profile:      http://www.linkedin.com/in/davidleber
> twitter:      http://twitter.com/rebeld
> --
> Toronto Area Cocoa / WebObjects developers group:
> http://tacow.org
> 
> 
> 
> 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to