Background: Corporate application - will be very written for its time in 2004.
Stack: .NET, Heavy use of Remoting, ASMX style web services, SQL Server
Problem: The application allows the user to go through various wizards due to the lack of a better term, all of their actions are stored in what we call the “wiz state”, which is essentially XML, which is very often stored in the SQL Server database, as we allow users to pause / resume their use. Often in these wizards, the XML that contains the wizard state is very large, I say 5-8 MB of data, and we noticed that when we had a sudden influx of concurrent users, we began to receive temporary timeouts against the database, because a lot of that , which consists of a wizard state, tracks collections of "things." Sometimes these custom collections become very large.
Question: Today we were at a meeting, and in October a revival of activity is expected, which will check the system like never before, and possibly lead to huge wizard states that return from the web server to the database. The essence of the situation is that there is only one database and one web server.
For the arguments, due to the complexity of the application, we can say that adding any type of clustering / mirroring to increase database throughput is out of the question. I spoke at the meeting and said that the fastest way to solve this problem in the shortest possible time would be to add more servers to the front-end web application so that the load can be distributed between the web servers. The development manager said that I was completely wrong, and this will not affect, because we have only one database, so adding more web resources will not do anything. He has one of the other developers that reduces the xml overgrowth that we often store in the database. Probably the ultimate xml size reduction we go back and forth,is the right idea, but adding additional web servers really has no effect, I just think that this applies to concurrent users, this should help.
, , - .
.
EDIT. XML .