Posts

Common Database Performance Problems in Web Application

Most online applications of scale are backed by some form of relational or non-relational database and it can be easily said that backbone of any modern web application is its data.  As a result, the database is critical to the functionality and performance of the application and should not come as a surprise that it is the biggest source of performance issues for web applications.  The problems can occur at many places, the application code might be accessing the database inefficiently, database connection issues or database itself might need tuning.  In this blog, I will be focusing mainly on database performance issues that can occur on application server (business logic) side.  The web application can be JAVA based, PHP based or ASP.NET based but the core of the issue would be same. Application code making excessive database queries This performance anti pattern ultimately results in slow response time as application load increases.  The problem is hard to detect under low

ASP.NET Application - What to Measure for Performance?

ASP.NET Application – What to Measure for Performance? Throughput »         What are number of requests getting executed per second? »         How many numbers of requests waiting to be executed? »         How many numbers of requests being rejected? ASP.NET Applications \ Requests / sec Web Service \ ISAPI Extension Requests / sec ASP.NET \ Requests Current ASP.NET Applications \ Requests Executing ASP.NET Applications \ Requests Timed Out Cost of Throughput »         What is the cost of throughput in term of processor utilization, memory, disk I/O and network utilization? »         What is the cost of hardware needed to achieve given level of performance? Processor Processor \ % Processor Time Processor \ % Privileged Time Processor \ % Interrupt Time System \ Processor Queue Length System \ Context Switches / sec Memory Memory \ Available Mbytes Memory \ Page Rea

ASP.NET Application Performance Considerations

ASP.NET Application Performance Considerations Threading Efficiency Thread pool tuning, Burst load, Creation of thread on per request, Blocking threads, Asynchronous calls Pool Resources Same connection string, Dispose or Close Call, Caching of pool resources, Obtain resource and release time ASP.NET Pages Page timeout, Page Size, Buffering, Page.IsPostBack, Partition Page Content, Expensive loops, Sever.Transfer instead of Response.Redirect Server Controls View State in Server Control, Deep hierarchies of Server Control Data Binding Page.DataBind, DataBinder.Eval Caching Dynamic data and static data, Memory limit, Caching right data, Refreshing cache, Cache API, Output Caching, Partial Page or Fragment Caching, Cache location, Kernel caching State Management InProc, StateServer,  SQL Server View State