Short summary for good decision.
Client
Better scalability
With server-side state management, each client that connects to the web server consumes memory on that server. If a website has hundreds (or thousands) of simultaneous users, the memory consumed by storing state management information can become a limiting factor. Pushing this burden to the clients removes that potential
bottleneck and frees the server to use its resources to serve more requests.
Support for multiple web servers
With client-side state management, you can distribute incoming requests across multiple web servers (or a web farm). In this scenario, each client provides all the information any web server needs to process a request. With server-side state management, if a client switches servers in the middle of the session, the
new server does not necessarily have access to the client’s state information (because it is stored on a different server). You can use multiple servers with server-side state management, but you need either intelligent load balancing (to always forward requests from a client to the same server) or centralized state management (where state is stored in a central database to which all web servers have access).
Server
Better security
Unless you digitally sign information stored on a client, users can change client-side state management information. Therefore, you should never use client-side state management to store confidential information such as passwords, access levels, or authentication status.
Reduced bandwidth
If you store large amounts of state management information, sending that information back and forth to the client can increase bandwidth utiliza-tion and page load times, especially when clients have low upstream bandwidth (as is common with home and wireless networks). Instead, you should store large amounts
of state management data (say, more than 1 KB) on the server.
Source: MCTS Self-Paced Training Kit (Exam 70-515): Web Applications Development with Microsoft .NET Framework 4 (Mcts 70-515 Exam Exam Prep)
0 comments:
Post a Comment