From my recent engagements I collected few performance anti-patterns that make ASP.NET web application to perform the way that is less than optimal. Many related to architecture and design.
Below is the list of the anti-patterns and related materials on how to identify, analyze, and fix it.
Have fun - if you feel like sharing your own experiences - that would rock my world!
Why My ASP.NET Application Slow?
- Improper HTML Rendering
- Large data volumes sent over the wire
- Complex algorithms, casting, serialization costs
- Chatty database access
- Session overuse – blows your RAM causing working process recycles
- Long running operations – locking on worker threads (threadpool)
- Synchronous communications w/downstream resources (web services, databases)
- Locking files (notice the low CPU in the picture below - this is where the application is locked with teh following excetion)
- Exception message: The process cannot access the file 'c:\inetpub\wwwroot\webapp\my.log' because it is being used by another process.
- Serialization
- Dynamic compilation
- ViewState
- Chatty resources access