scalable state-management

Discussion in 'ASP .Net' started by John Grandy, Mar 17, 2005.

  1. John Grandy

    John Grandy Guest

    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?
    John Grandy, Mar 17, 2005
    #1
    1. Advertising

  2. John Grandy

    Scott Allen Guest

    Hi John:

    There are some good discussions in the following chapter of the PAG
    Performance guide:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag/html/scalenetchapt06.asp

    There are 32 bit servers on the market that can hold 64 GB of RAM -
    they are pricey, and you would need to run Windows 2003 Data Center
    Edition to make use of the RAM. 64 bit servers can go even further.

    Don't forget to factor in reliability when choosing between inproc and
    database session storage.

    --
    Scott
    http://www.OdeToCode.com/blogs/scott/

    On Thu, 17 Mar 2005 11:13:40 -0800, "John Grandy"
    <johnagrandy-at-yahoo-dot-com> wrote:

    >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?
    >
    Scott Allen, Mar 18, 2005
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. =?Utf-8?B?QnJlbnQgQm9yb3Zhbg==?=

    Scalable web architecture with ASP.NET 2.0

    =?Utf-8?B?QnJlbnQgQm9yb3Zhbg==?=, Dec 11, 2005, in forum: ASP .Net
    Replies:
    3
    Views:
    592
    =?Utf-8?B?QnJlbnQgQm9yb3Zhbg==?=
    Dec 12, 2005
  2. =?Utf-8?B?VGVycnkgSG9sbGFuZA==?=

    Scalable Application Design

    =?Utf-8?B?VGVycnkgSG9sbGFuZA==?=, Mar 17, 2006, in forum: ASP .Net
    Replies:
    3
    Views:
    1,560
    Laurent Bugnion
    Mar 18, 2006
  3. Ilya
    Replies:
    9
    Views:
    1,796
  4. Curtis
    Replies:
    13
    Views:
    639
    Curtis
    Dec 21, 2005
  5. Cerebral Believer

    User Scalable Text Using CSS?

    Cerebral Believer, Mar 25, 2006, in forum: HTML
    Replies:
    17
    Views:
    727
    dorayme
    Mar 26, 2006
Loading...

Share This Page