Re: scalable state-management

Tech-Archive recommends: Fix windows errors by optimizing your registry

From: Stefan Broenner (Stefan.Broenner_at_portum.com)
Date: 03/24/05


Date: Thu, 24 Mar 2005 08:18:05 +0100

Hi John,

we are using Strategy 1 here for a large web farm. In order to work-arround
the SQL Session State performance issues, we are currently evaluating a
product called ScaleOut StateServer
(http://www.scaleoutsoftware.com/products/stateServer/index.html). Looks
great so far! We also did Stratgey 3 but this can eventually flood the SQL
Server with load.

I do not believe that in the feature we will no longer have web farms (and
therefor would be able to use normal ASP.NET inproc session state) because a
single box will never give you the same availability as a farm (a mainframe
maybe but then we're talking about a different league). And then there's the
issues with maintenance and availability if you have only a single web
server...

Cheers

Stefan

"John Grandy" <johnagrandy-at-yahoo-dot-com> wrote in message
news:%23Tw7KkyKFHA.3484@TK2MSFTNGP12.phx.gbl...
> Could someone point me in the direction of good discussions on scalable
> state management solutions?
>
> Specifically, pros and cons of following strategies:
>
> Strategy 1 : temporary business-objects are implicitly stored in RAM,
> "permanent" business objects are explicitly stored in SQL-Server
>
> Strategy 2 : both temporary and permanent business-objects are implicitly
> stored in SQL-Server
>
> Strategy 3 : both temporary and permanent business-objects are explicity
> stored SQL-Server
>
> By "explicitly stored" I mean that ADO.NET is used to load/save business
> objects to/from SQL-Server db-tables.
>
> By "implicitly stored" I mean that persistent business-objects implement
> ISerializable and are stored in session-state. The state-server is either
> implemented as an out-of-process RAM state-server, or an out-of-process
> SQL-Server state-server.
>
> An example of a temporary business-object is a shopping-cart collection of
> items before the customer has committed to purchasing them.
>
> An example of a permanent business-object is a shopping-cart colletion of
> items after the customer has committed to purchasing them.
>
> I have not built a highly scalable ASP.NET web-app, but it occurs to me
> that:
>
> 1. accessing a DISC state-server (either explitly or implicitly) is much
> slower than accessing a RAM state-server
>
> 2. a DISC state-server is effectively infinitely expandable
>
> 3. a RAM state-server is limited to the maximum RAM supported by the OS
>
> Question: can special machines be built that exceed the basic OS RAM
> maximum?
> Question: is it possible to split a RAM state-server across multiple
> machines?
>
>



Relevant Pages

  • RE: Machine x receives results meant for machine y
    ... you may arrange a not busy time to do this. ... Web farm is working in a load balanced environment, ... the original query request was from your Web Server 1, ... Session State Is Lost in Web Farm If You Use SqlServer or StateServer ...
    (microsoft.public.sqlserver.connect)
  • RE: Machine x receives results meant for machine y
    ... you may arrange a not busy time to do this. ... Web farm is working in a load balanced environment, ... the original query request was from your Web Server 1, ... Session State Is Lost in Web Farm If You Use SqlServer or StateServer ...
    (microsoft.public.sqlserver.connect)
  • Re: Storing session information in MSAccess or Text File
    ... > Session State in Access? ... > You would only "need" to store state in a database on ... If you are running a web farm, ... > Access database over a shared drive. ...
    (microsoft.public.dotnet.framework.aspnet)