The topic today is the rise in affordable (for smaller websites, that is) Web Performance Optimization (WPO) and Content Delivery Networks (CDN) to increase web performance, reduce energy consumption, and lower the amount of redundant traffic moving through the Internet.
First off, some new tools for Web Performance Optimization, or WPO. There have been some companies catering to larger firms in this area for a couple of years. I’ve listed some below (feel free to contact me with more if I’ve missed somebody).
Last week, I discovered WEBO
Their package, for about $100, promises to bring the multiple benefits of web performance to small and midsize web design and development shops, as well as smaller clients who can’t afford the larger WPO services. The thing I like about their approach is segmentation – they offer several WPO products, targeting larger companies, e-commerce sites (sorely needed), and they also have an affiliate program.
The value of relatively low-cost, turnkey approaches is that it gives an 80-20 benefit to the web performance space. Ideally, sites would be sweated over to wring out every last drop of performance and energy minimization, but that’s not likely to happen except for the largest companies. Right now, we have a landscape where large websites are using lots of web performance optimization (had have for years), while smaller sites don’t use any at all. In my last check over at HTTPArchive, over 1/2 of all websites don’t use any .httpaccess or server-based caching, one of the biggest ways for a website to reduce its footprint in the Internet ecosystem.
So, a company like WEBO has the potential to help lots of smaller web design and development firms fix their WPO, and in turn, sustainability problems. Does this mean they can hand off sustainability? Nope. Sustainability is a meta-framework which covers WPO, as well as Search Engine Optimization (SEO) and pretty much everything else that goes into designing and implementing a website. The firm still has to understand what web sustainability requires, and understand how WPO fits in. Performance optimization is part, but now all, of Sustainable Web Design.
What I’m hoping to see is that the new class of WPO companies working with smaller clients begin to incorporate sustainability into their own thinking, and educate their clients in it. Right now we have a rash of “green” web hosting companies – it has turned into a major competitive claim in that space. When will we see the first WPO company which is not just about speed or performance, but about being “green”?
There’s got to be a lot of potential good marketing in that move.
Another area of interest is Content Delivery Networks, or CDNs. CDN systems have two big advantages with respect to sustainability. First, by linking to a CDN instead of your own site, your load content in parallel from two computers. This reduces the HTTP request load on your local server, and the in-parallel downloading might even be faster than otherwise.
In sustainability language, a CDN is the equivalent of “buying local”. In the physical world, buying local means that you reduce the carbon footprint of food and other items, since they are shipped a short distance instead of over the ocean. On the web, CDNs put your website into numerous “edge servers”, positioned worldwide so they are close to the people requesting your pages. Each packet of data jumps through fewer wires and routers on its way to its destination. Unlike the real world, we aren’t directly supporting local business buy requesting our bits through a local CDN, but it is a good compromise between local access and global reach, which is why people use the Internet in the first place.
- Google Hosted Libraries – https://developers.google.com/speed/libraries/devguide
- Microsoft Ajax Content Delivery Network – http://www.asp.net/ajaxlibrary/cdn.ashx
Here’s some additional common files hosted on the Microsoft CDN:
Here’s Google’s list of common CDN libraries as of August 2012.
- jQuery UI
- Yahoo! User Interface Library (YUI)
- Ext Core
- Chrome Frame
And here is a pretty complete list of the programs supported by AOL, Google, Yahoo, and Microsoft:
For some of the smaller libraries, you can use Cached Commons (http://cachedcommons.org/)
- Raphael (useful for SVG)
- JQuery plugins (LOTS)
- 960.gs and Blueprint (boilerplates)
- Dojo (CMS)
- ExplorerCanvas (provide canvas support for old IE)
- Box2D, Processing.js and Three.js (3D with WebGL)
If you’re using Twitter Bootstrap, check out BootstrapCDN.
What to do for the unique content on your website, not part of a common CDN library? There are several content delivery networks that are affordable for smaller design shops where the code and assets unique to your site can be hosted. In the past, this has been impossible unless you were a big telco. Akamai has been doing CDN since the end of the last century, and has confined itself to working with the big boys, and the same seems true of Limelight, Verizon, and most of the lists of traditional CDN providers. They have helped these large firms deliver streaming video, which would otherwise overwhelm the web with traffic.
In contrast, we now have Amazon’s new Cloudfront CDN, clearly aimed at smaller sites – see their price listing, or try their calculator for your own site. They also have a free usage tier running for 1 year. As this article in the Economist noted, Amazon made a huge, and correct bet, that cloud services would become a major part of their overall revenue.
Unfortunately, Amazon isn’t saying just how “green” their cloud service is in terms of energy and resource consumption at the data center. I’ve also been unable to locate comparisons of cloud services based on energy and green IT practices. If you’re only interested in speed, you might look at: http://www.cloudclimate.com/cdn-speed-test/
Figuring out that part of sustainability is going to be hard. We either have to trust the CDN providers to self-report, or listen to established environmental advocacy groups. Unfortunately, the latter can get it wrong – witness Greenpeace’s re-grading of Apple’s data centers after giving them a horrible grade a few months ago. Studies like this on on Wired show that the cloud is probably greener than the standard webhosting model by about 30%, but I’m waiting for Jevons’ Paradox to kick in. It does seem that powering the cloud via solar is, at present, pure greenwash.
The other problem for CDN sustainability will be local sourcing of electricity for “edge” servers delivering “eat local” content. If the servers are local, they are using electricity from the local grid. I’m betting that the electricity supply in most countries is far from green – making the CDN wasteful in “sourcing” for their energy needs. This is probably why Google, and other companies, are also poking into creating their own power as well as bandwidth.
But even if the cloud uses the same power as traditional hosting, the benefits of “eating local” and sharing common cloud libraries makes it a net positive for sustainability.
Other more affordable CDN services (or rather, ones that seem willing to take small clients) include MaxCDN ($90 for 1TB/year), Rackspace Cloud CDN ($10 GB/month) or netDNA (looks like about $60 TB/month) or cloudCache ($12/month for sites transferring less than 200 GB/month.
So, how would CDN fit into your Sustainable Virtual Design Strategy? You could create a roadmap for site development, depending on expected traffic. Your Sustainable Web Design document might include a section that reads like this.
NOTE: these are examples, not an exclusive endorsement of the specific cloud services mentioned!
….To reduce redundant use of Internet resources, we support cloud computing, in particular Content Delivery Networks, or CDN. CDN uses servers which replicate your content locally, the equivalent of “eat local” for the web, enhancing the green-ness of your project.
We recommend our clients explore using a CDN to increase their site’s sustainability. Our development process includes support for getting your site onto a performance-boosting CDN.
- Basic Free CDN Support
- We develop with common libraries like JQuery and Yahoo YUI to leverage free CDN services, and automatically connect your site to these CDNs. We provide code allowing fallback to local libraries if the cloud service is unavailable
- Paid CDN services
- For sites expecting to transfer less than 100 gigabytes of data per month, we use cloudCache basic service
- For smaller sites transferring less than 1000 gigabyte of data per month, we automatically ink to free CDN services, including Google Hosted Libraries, Microsoft Ajax Content Delivery Network, and CachedCommons
- For medium-sized websites, we use Amazon CloudFront, Rackspace, MaxCDN, or cloudCache. We can help our clients integrate their website with these services for maximum performance and web sustainability.