I have this web app (ASP.NET MVC4 web site), which has at least 2,000 online users. One of the most popular pages in my application contains data about the user, and this data is not located in my repository, it is included in some external vendor that is integrated into my system. So whenever this page is drawn, I have to call those services (currently there are 17) and instead of drawing the page according to the data given by them, The data is subject to change at any moment, so I can not cache it. Everything is working well most of the time and CPU usage is 5% - 30% (depending on the number of online users of the course) For each service call I have 5000 milliseconds timeout (for service reference I SetTimeout
set and raw for HTT Webbarm '
I set the timeOut property) to be equal to 5000 milliseconds) Now assume that a service decreased My server's CPU usage is 3% - like 8% It decreases and this application is decreasing, I mean this page takes some time to load (any page), for example, if I take feedback (150-250 mms) from my application in general mood It is now 1-3 seconds. What I have to do is out of my ideas I can not finish the time because some services are sometimes taking 3-4 seconds, so I can give 5 seconds timeout. What can I do to stop late response? I know that this is a little general question, any suggestions are welcome. thank you in advanced.
It seems that you have a threading problem. And they can not take action on other requests.
I recommend that you use the async controller:
No comments:
Post a Comment