Posts

Leverage Client Side (Browser) Caching Consistently

For viewing all tips see  here Applicable To All Browsers How Improves Page Load Time o         By optimizing number of network roundtrips o         By optimizing network latency (HTTP Payload Size) Prologue Most web pages include resources that don’t change frequently (e.g. CSS, Java Scripts and Images etc.) but they take additional network time for downloading, which increases the page load time.  HTTP Caching allows these resources to be cached by browsers / proxies.  Once cached by browser, the browser can refer locally cached resource rather than downloading it again on subsequent visit from distant web server over the network. Why o         To eliminate network round trip time o         To reduce total payload size of the responses o         Reduce the bandwidth and hence hosting cost of website o         Some of the newest browser use a heuristic to decide how long to cache all resources that don’t have explicit caching headers.  Other older browser may require caching he

Minimize DNS Lookup in the “Critical Path”

For viewing all tips see  here Applicable To All Browsers How Improves Page Load Time By optimizing network latency Prologue Browser needs to perform lots of activities before it can start rendering the page.  It needs to resolve the DNS name, make TCP connections, download response data etc.  Most of modern browsers are capable of doing progressive rendering and would be fast if minimal activities need to be performed on start. ‘Critical Path’ can be defined as code and resources that are required for initial rendering of the HTML document Why Most browsers block other downloads and rendering while external java script file is being downloaded, parsed and executed.  Adding DNS lookup time to this process further delay the page load time How Serve early loaded external java script files (e.g. from document head / early document body) from the same hostname as the main document.  If it is not possible to serve from the same hostname then defer their loading.  See Tip xxx. E

Minimize DNS Lookups

For viewing all tips see here Applicable To All Browsers How Improves Page Load Time o         By optimizing network latency Prologue Before a browser can establish a network connection to a web server, it must resolve the DNS name of the web server to IP address.  If the DNS resolution has already been performed then it can be resolved from Browser / OS cache else it needs to be looked over the network using DNS server(s) Why o         To minimize time taken during DNS name resolution o         Reusing domains allows the browser to reuse TCP connections more frequently, further reducing the network time How o          Use URL paths instead of host names wherever possible.  For example, instead of hosting developer site on developer.rootDomain.com, host it on www.rootDomain.com/developer Exceptions o         There are benefits also from using multiple hostnames to induce parallel downloads.  See Tip {TODO}. Recommendations o         Between 1 and 5 hosts, where 1 main host a

Best Practices on Web Page Performance

It’s not something new today to know that performance of the web application needs to be taken seriously by all stakeholders before releasing it to their customers.  The performance of the application can be tuned either at back-end or at front-end.  One of the most important metric for end-user is ‘Web Page Load Time’ to gauge the performance of the web site. In this article, I have listed tips (best practices for web page optimization at front-end) gathered from different sources (references are provided at the end). The tips are categorized in following broad categories.  Some tips might belong to multiple categories.  In that case, tip is listed under a category, which impacts web page performance most.  Following are broader categories of best practices where all tips belong to – Optimization of Number of Network Round Trips Optimization of Network Latency (Network Related) Optimization of Network Latency (HTTP Request Size) Optimization of Network Latency (HTTP Payload Si

Single User Load Testing KPIs

Image
In ‘Single User Load’, web analyzer like HTTPWatch, DynaTrace etc. are used while browsing through the scenarios and page load time and various other KPIs are collected.  The KPIs are analyzed further for tuning the web page response time. Following are the key KPIs that can be used for analysis purpose – Web Page Loading Time Network Time HTTP Requests Request Size Web Page Loading KPIs Time to First Impression o         This is the time from when the URL is entered into the browser until the user has the first visual indication of the page that gets loaded.  It depends on the initial HTML document when the browser can start drawing content. There are different Best Practices available that talk about different strategies. Google for example downloads a minimalist page to provide fast first visual rendering. It then delays loads more content after ‘onLoad’ or even later when the user starts interacting with the page. o         The recommended value for this KPI is like this –

Articles List on Web Page Performance

Following are collection of articles, discuss on various ways to optimize web page performance, monitoring of web application from end-user perspective (i.e. using various browsers' plugin like FireBug for Firefox, PageSpeed for Chrome and DynaTrace for Internet Explorer) and Tips and Tricks for tuning the page load time. Best Practices on Web Site Performance Optimization It discusses / explains importance of multiple KPIs (Page Load Time, Network Roundtrips etc.) related to web page performance. Best Practices on Network Requests and Round trips It explains the working of browser and how it downloads resources and its impact on performance Best Practices on Browser Caching It explains the working of Browser Cache and its importance in web page performance. Best Practices for Speeding up your Website It list 35 best practices divided into 7 categories. Web Performance Best Practices from Google Crispy, extensive, very helpful information on web site performance. Optimi

Performance Tester Skill Set

Screening of Performance Testing Profiles x --> Mandatory Skills $ --> Optional Skills Skill / Level Tester Sr. Tester Lead Manager Remarks Tool and Utilities Expert with one performance testing tool (proprietary) x x x $ LoadRunner, VSTS etc. Good in one performance testing tool (open source) $ x x x Expert in open source testing tool would be added advantage.   Few open source tool - Jmeter, OpenSTA Awareness of other performance related utilities $ x x x HTTPAnalyzer, Fiddler, Netmon etc. Awareness about performance metrics and counters $ x x x Perfmon, SQL Profiler etc. Setup Proficient in environment setup (SUT) x x x $ Setup of A