Session Status in Network Load Balance Scenarios

Currently, we have installed the current server for the site:

  • Server 1: system and database
  • Server 2: public site
  • Server 3: public site

Server 2 and 3 are managed using Windows Network Load Balancing. They both run copies of the code for a public site.

Sites are highly session dependent because they work with user inputs, my question is this:

How to save state between servers?

Currently, web.config for public sites is as follows:

<sessionState mode="StateServer" cookieless="false" timeout="40" stateConnectionString="tcpip=localhost:42424"/>

Sure, this is just a case of changing "localhost" to IP, where do I want to save the session? I am thinking of using a database server to store the session, so it will look like this:

<sessionState mode="StateServer" cookieless="false" timeout="40" stateConnectionString="tcpip=databaseserverIP:42424"/>

Would that be reasonable?

, - , / .

( !), . 2 3, , , ?

, !

,

+3
4

, .

, SQL Server ASP.NET.

pro/con ( SQL Server /, , , ASP.NET , , - /).

, , , .

- , .

, - (, webfarm), machineKey , .

ASP.NET( machineKey, ).

+4

SQL . mode = "SqlServer" aspnet_regsql, .

, , , , [Serializable]

+2

- "" .

, "" . , , . cookie http-, . ( ).

, , .

, , , , ( , .)

+1

Source: https://habr.com/ru/post/1755496/


All Articles