Ticket Q426045
Visible to All Users
Duplicate

We have closed this ticket because another page addresses its subject:

Performance.Web - Support the Web Garden mode

About Web Gardens and XAF

created 13 years ago

We've been having some performance issues (see ticket http://www.devexpress.com/Support/Center/p/Q423395.aspx)

The application seems to be running fine with a small quantity of users, but when we reach 30 or so the CPU process hangs and we have to reset the IIS working process.

The devexpress support team told us to check/profile the SQL Server, we did and everything is working fine, the problem resides at the sever-side.

We tried setting up a web garden with multiple working processes. From reading multiple online forums we think a web garden would help us greatly with our performance issues. The problem is that in order for it to work we cannot use inProc session state, and we'd have to use SQL or State Service.

BUT, it seems that the XafApplication object is not serializable.

Is there a possible workaround? we've seen many people using sticky sessions configured on the Windows Server 2003 Load Balancer, but we don't really have many servers, we just have one with multiple worker proccesses.

Any help would be greatly appreciated.

Answers

created 13 years ago (modified 13 years ago)

Hello Amhed,
Yes, XafApplication is not serializable and there is no way to use XAF Web apps with OutProc session state mode. This is also described in our documentation.
However, you can use a stateful application in a web garden scenario if you configure the client/IP affinity feature so that requests from the same client/IP are handled by the same working process.
We described these options in the Performance.Web - Support the Web Garden mode ticket.
Take special note of the following articles:
State Management and ways to handle Cache in Web Farm/Web Garden scenario
<newline>
HTTP Load Balancing using Application Request Routing
I hope you find this information helpful.

    Comments (2)

      Hey, thanks for the quick reply.
      I realize this is more of an IT question; but, can this solution work without having to setup multiple servers? I mean, we thought the sticky session approach was designed for running multiple servers. Can we setup a Windows 2003 Load Balancing service with just one server and multiple working processes (web garden).

      Dennis Garavsky (DevExpress) 13 years ago

        Yes, I agree with you, it is more IT-related question, unrelated to our products.
        According to the first article I gave you,
        it is possible:
        "Affinity:

        Now the question: Do we have some affinity settings in WebGarden scenario? yes

        There is a hardcoded client connection affinity to a worker process instance. So for a given client TCP connection all the HTTP requests will be handled by the same instance of the worker process.

        So as we all have seen that in case of setting Affinity parameter, we can host our Application in WebFarm/WebGarden scenario without worrying about, How web server data is going to be stored and managed.It will be working seamlessly as your application is hosted on single server only."

        Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

        Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.