Chapter 4. Next Steps
We’ve talked at a high level about what sorts of performance wins you can achieve when taking a holistic, full-stack view of your web applications. So, what are some tactical next steps you can take?
Get Synthetic Web Performance Results
As we talked about in Chapter 1, run your site through a web performance test like WebPageTest. It is free, gives you an idea of your current standing, and gives you steps to take to remediate the issues found.
Here are some other web performance tests:
Trial a CDN for Free
We talked at length about some of the benefits we can get from using a CDN, but signing up with a CDN can be daunting and will involve cost. An easy first step on that path is to set up a free trial account with a CDN. Most of the popular CDNs have a free trial available:
Akamai, available at https://www.akamai.com/us/en/campaign/get-akamaized.jsp
Incapsula, available at https://www.incapsula.com/pricing-and-plans.html
MaxCDN, available at https://www.maxcdn.com/test-account/
With your free trial set up, benchmark your site behind a CDN and compare the performance numbers to your current setup. If you are really feeling daring, point some traffic to it and see what benefits you can get infrastructurally (are your machines less taxed, can you quantify how many fewer nodes you would need to maintain?). Can you quantify these benefits and use them to justify the budget request to actually make the plunge?
Trial an Application Performance Management Tool for Free
Just like CDNs, application performance management (APM) companies are more than happy to give you a free trial to test out their products. Here are s of the notable ones:
New Relic, available at https://newrelic.com/signup
Dynatrace, available at https://www.dynatrace.com/trial/
AppDynamics, available at https://www.appdynamics.com/free-trial/
Install an agent and check out the dashboards for your application. Most APMs are so feature-rich that you’ll most likely find that the company you are trialing is happy to walk you through their feature sets. Some even offer extensive training. In the past, I have even had the company representative offer to help me debug a production issue as a way of a capabilities demo.
Embrace Full-Stack Development and DevOps
The most important next step of all is to embrace the idea of full-stack development and DevOps.
I can still remember the days of needing to reach out to an operations team when something would go wrong in production because only they could get me a snippet of the logs. And it would be a flat file that I would need to grep through to search for things that I had learned to look for; things like specific error codes or HTTP responses.
I remember needing to factor hardware into my budget in the beginning of the year for projects that had not yet been scoped or even envisioned yet, and then waiting months for machines to be ordered, shipped, and set up at the datacenter. And, if I had guessed wrong, how was I going to scale up in time to meet the demand?
The advances of platform and infrastructure as a service have brought the power of operations on demand, if we just embrace it with open arms.