Website Performance Optimization
Our Approach to enhance the performance of your Web Application has two aspects
1. Checking for existing issues in your code and database which may be causing the performance issues and solving them.
2. Implementing various techniques to improve performance on the Code + Database running at server and to make the pages load faster on client (i.e. browser on User’s machine).
1. Checking for existing issues in code
A. CLient
- The resources such as css and js files should be bundled & minified.
- Images should be optimized in terms of size vs clarity.
- Browser Caching should be enabled for static resources.
- Compression is enabled for large static pages.
B. SERVER CODE
- There should not be too many Database requests happening for one http request.
- The server configuration should be optimum for the traffic. A lot capacity server won`t be able to fulfill high amount of traffic.
C. Database
- Correct Database design fundamentals should have been applied.
- Inefficient SQL Data Traversal methodologies such as “cursor” should be avoided in queries and Stored Procedures.
D. Communication between layers
- The various layers of application i.e. Database, Data Access and Business layer of the code should ideally be in close proximity of each other, otherwise the latency in communication between the layers can be a cause of Performance loss.
2. Implementing various Performance Enhancement Techniques
In some cases, it is not enough to just correct the mistakes. For a very high traffic application, some advanced techniques may need to be applied such as
A. Using Indexing and Table Partitioning in Database to increase query performance.
B. Enabling Query Caching for commonly used SQL queries.
C. Using Code Caching to cache the output of some methods in code for a given set of inputs and returning it from cache when needed without actually executing the code.