0

I need some information from you.I have used session.TimeOut=540 in application.Is that effects on my Application performance after some time.When number of users increases its getting very slow. response time nearly more that 2 minutes for a button click also.This is hosted in server in Application pool .I don't know about Application pool much.If Session Timeout is the problem i will remove it.Please suggest me the way to for more users. enter image description here

Job Numbers,CustomerID,Tasks will come from one database.when the user click start Button then the data saved in another Database.I need this need to be faster for more Users

Rakesh Devarasetti
  • 1,409
  • 2
  • 24
  • 42
  • What does the app do? this depends on a lot of factors including design, server performance, how many database operation are running for each user and how the onnections get established and how many time per User, u need to provide much more information to get optemisation ideas. – CloudyMarble Aug 03 '12 at 06:55

3 Answers3

0

I think that you have some page(s) that make some work that takes time, or for some reason or a bug is keep open for more time than the usual.

This page is keep lock the session and hold the rest page from response because the session holds all the pages.

Now, together with the increase of the timeout this page is lock everything and here is you response time near to 2 minutes.

The solution is to locate the page that have the long running problem and fix it or make it faster by optimize the process, or if this page must keep the long time running, then disable the session for that one.

relative:
Web app blocked while processing another web app on sharing same session
What perfmon counters are useful for identifying ASP.NET bottlenecks?
Replacing ASP.Net's session entirely
Trying to make Web Method Asynchronous
Does ASP.NET Web Forms prevent a double click submission?

About server

Now from the other hand, if your server suffer from hardware, or bad setup then here is one other answer with points that you need to check to make it faster.

Community
  • 1
  • 1
Aristos
  • 66,005
  • 16
  • 114
  • 150
0
  1. Find out where the time is spent

    add the StopWatch in the method which you said "more that 2 minutes for a button click". you can find which statment spent the most time.

  2. If it is a query on DB that cost time. Check your sql statement.

    are you using "SELECT Count(*)" instead of "SELECT Count(Id)"? the * is always slower. also, don't try "SELECT * FROM...."

  3. Use cache.

    there are many ways to do cache. both in ASPX pages and your biz layer. the OutputCache is the most easy way.

    and also, cache the page (for example a blog post) on the first time when a user visit it.

  4. Did you use memory paging?

    be careful when doing paging on gridview or other list. If you just call DataSource=xxx and DataBind(), even with PagedDataSource, this is likely a memory paging. It cost a lot of performance. Please use stored procedures to do paging.

  5. Check your server environment

    where did you deploy the website? many ISP will limit brandwide and IIS connection count and also CPU time to your account.

    if you have RD access to your server. you can watch CPU and memory usage to see if they are high when many user comes to your site. If the site is slow and neither CPU nor memory useage is high, it may be a network brandwide problem.

Edi Wang
  • 3,547
  • 6
  • 33
  • 51
0

Here are some simple steps to narrow down the issue -

1) Get HTTPWatch (theres a free Basic version) available and check whats really taking time from an end user perspective. Look at number of requests, number of resources downloaded, and the payload. If there is nothing to worry move on to next

2) If its not client, then its usually the processing time on the server. Jump on to DB first - since this is quite easier to eliminate quickly. Look at how many DB calls are made (run profiler in staging or dev) and see if there are any long running queries, missing indexes or statistics, and note the IO. If all is well, move on

3) Check your app code. You could get on with VS.NET in build profiler or professional tools such as Ants. If code is fine then its your network or external calls that you make, check your network bandwidth. If you still cannot narrow down, check your environment/hardware

The best way to get to it is to apply load - You could use simple tools such as ab.exe (that comes as part of Apache Web server) to have concurrent hits on your server and run the App, DB profilers in the background to get to the issue.

Hope this helps!

Lalman
  • 946
  • 2
  • 11
  • 27