- May 11, 2017
- Author: Abu Thahir
- Category: Technology
Have you ever wondered why Google, Facebook, and many other firms are so successful? Well, there may be many reasons for their enormous success like their rock solid business plan, brilliant benchmarking, incomparable innovation, inherent interest in identifying a user’s pain points and improving the overall experience, etc. I’m pretty sure there won’t be any contradictions to my suggestion of including “To be successful, you need to be customer-friendly” in your list of business laws or mantras.
Improving your site’s user-friendly aspect offers a tremendous amount of scope. You can make your site customer friendly by concentrating on improving the minute details like interactiveness, spontaneity, flexibility. In this Digital Era, enhancing your site’s user experience should be the first and foremost thing on your checklist.
How important is your website’s loading time? Improving your site speed plays a vital role in increasing your site’s SEO score as it enhances the user’s experience and boosts your site’s conversion rate.
A study conducted by MOZ says if your website’s loading time is more than 5s, 75% other sites will be faster than your site and most users won’t be so willing to wait. Instead, they would just leave your site. Let’s say; Google takes more than 10s to load, would any of us remain patient? Not a chance! We would opt to use a different search engine. Do you think my perception has gone awry? Feel free to look up the impact loading time has on your SEO scores.
9 Ways to enhance your site's load speed:
Your site would load a lot more faster, if you cut down the HTTP requests considerably.
Combine all your CSS into an external file and load it from the <head> section. Once the external pages are cached, they’d load a lot more soon.
Always ensure that your images are properly compressed and optimized for the web.
Use server-side caching to create an HTML page for every URL so that dynamic sites don’t have to build a page each time a URL is requested.
Try using Gzip as much as possible, since it’s usage would significantly compress the size of the page sent to the browser which extracts the information and displays to the user, speeding up the process considerably.
Eliminate 301 redirects wherever possible, as 301 redirects force the browser to a new URL, making the browsers wait a bit longer for HTTP requests to come back.
Serve your static contents from a “Cookie-Free” subdomain. It is true that HTTP requests with cookies tend to enhance the individual user experience, however, using cookies for static contents is unnecessary. By eliminating cookies from HTTPS request for Static contents, you can increase the page speed significantly.
Last but not least, if your site is capable of attracting a significant amount of global users then implement a CDN. It would allow users to download information parallelly allowing your site to load a lot more faster. Nowadays, CDN has become quite popular with affordable services like Amazon CloudFront (Thanks to AWS Free Tier), and the wide range of free services like Cloudflare.
Interpretation of a CDN:
Content Delivery Networks (CDN) serve the content of a site to a user based on their geographic location, through their “Distributed Data Centers” that are available across the globe.
Each Datacenter consists of two primary building blocks:
- Points of Presence (POPs)
- Caching Edge Servers
Points of Presence (POP):
PoPs are the data centers distributed strategically with the use of several efficient algorithms which are responsible for communicating with users in their geographical vicinity. They reduce the number of Hops (Intermediate portions in the traversing path from a source to destination) and the round trip time by taking the content close to a user’s location. PoP holds a copious amount of caching servers.
Caching Edge Servers:
An Edge Server stores and delivers cached files to accelerate the load time of a site and reduce its bandwidth consumption. Caching Edge server consists of multiple storage drives with an extensive amount of RAM resources to store the most frequently accessed items.
The Mission of a CDN:
CDNs are designed to reduce a website’s latency. Latency is nothing but the time taken to process a user’s request to view your site, from the instance it is made to the moment when the content actually appears on the user’s browser.
The physical distance between the user’s location and the location of the site’s hosting server has a huge impact on the latency delay interval.
The mission of a CDN is to shorten the physical distance virtually thus improving the site’s rendering speed and performance.
Working of a CDN:
CDN stores a cached version of its content in multiple geographical locations named PoPs (Points of Presence) minimizing the distance between the visitors and your site’s server. Each PoP contains numerous caching servers to deliver the content to visitors within its proximity.
CDN caches your content in many places at once to provide broad coverage to the users. For instance, when a user accesses your US-hosted website from Australia, the requests will be handled by a local Australian PoP to prevent the user’s requests and your site’s responses from making a round-trip across the globe. This process decreases the time taken to handle a user’s request and delivering a response.
Working of a CDN (Source: keycdn)
Rise of CDN:
Nowadays, more than half the traffic is served by CDN, and so nearly everyone use it on a daily basis unaware of that fact. These numbers seem to be increasing exponentially every year as all our common activities like reading articles on a news site, shopping online, watching videos and browsing social media, etc. is essentially an interaction with CDN.
12 Reasons to use a CDN:
CDN works by storing a cached version of its content in data centers distributed strategically across the globe which offers the following advantages:
- Improves the speed at which your page loads as the site’s content will be served from a nearest data center.
- The site would be available even when your website’s host server is down since CDN pushes (literally copies) your website’s content to multiple data centers.
- Using Distributed Servers in contrast to a Single Centralized Server reduces bandwidth consumption.
- You can handle high traffic by distributing your website’s traffic across multiple caching edge servers.
- Helps you maintain the load balance between multiple servers.
- Localizes your site’s coverage without adding additional expenses.
- Routing your traffic through a CDN’s DNS aids in blocking spammers, scrapers, and other bad bots through their security measures.
- Protects your website from DDoS attack.
- Modern CDN offers high-capacity infrastructures.
- Detailed Usage Analytics of your site’s traffic, bandwidth usage, etc. in each CDN vendor’s Dashboard.
- Built-in version control to track and revert the changes if necessary.
- Global availability of your content, etc.
P.S: If you find the reasons aren’t satisfactory, we insist you go through the details mentioned above in this blog entirely or try scrutinizing the CDN’s architecture yourself when you do that you’d come to the conclusion this process actually works. Understanding the conceptual side of CDN paves the way for finding reasonable answers to justify the point why these 12 reasons are listed here.
Cons of using a CDN:
Nothing in this world is truly perfect. Likewise, CDN also has its fair share of imperfections. If you find that there is no need to extend your services globally as the vast majority of your users are from the same region where you are hosting your site then using a CDN globally might be unnecessary. This may increase the intermediate DNS lookups and introduce other unessential connection points between the visitor and the server when they are already nearby. This drawback could, in turn, can end up increasing your site’s loading speed which is counterproductive.
So, in this case, it is better to avoid using even some free CDNs. However, hosting your website contents in a server near a target user’s country or configuring a “Cookie-Free” subdomain for serving static contents can be handy for non-global users to attain the benefits of latency boost. To explore more about “Cookie-Free” subdomains you could have a look at articles related static cookieless subdomains similar to the examples listed in this paragraph.
Implementing a CDN:
CDN’s architecture and implementation differ from one vendor to other. We took the initiative to get our hands dirty on CDN for a sample Blogging Site with hefty images, CSS, js libraries and built-in WordPress platform.
Enabling Cloudflare CDN for your site is pretty simple, you’d have to just add your site to your registered Cloudflare account. Once your site is added, CloudFlare gives you their name servers (ns1.cloudflare.com) and then proceeds to modify your root domain DNS configurations (e.g., domain.com) including your subdomains (e.g., www.domain.com, img.domain.com) making it the default inbound gateway for all incoming traffic.
In a nutshell, at your root domain change A record to point to one of the CDN’s IP ranges. In each subdomain, modify its CNAME record to point to a CDN-provided subdomain address (e.g., ns1.cdn.com). These changes result in the DNS routing all visitors to your CDN instead of being directed to your original server.
If this sounds weird, you need not worry because CDN vendors offer step-by-step instructions throughout the activation phase. They also have an exclusive support team which offers assistance round the clock. You can view a step-by-step instruction on how to implement a CDN, here.
We were delighted to witness the enhancement achieving amazing feet of reducing the “Fully loaded time from 18.0s to 9.5s” after implementing CloudFlare CDN in our sample blogging WordPress site. Though we improved our page speed drastically, the scores may seem inadequate because we did not implement any other optimization techniques mentioned earlier (click to explore) other than CDN.
Report generated for a sample wordpress site without CDN or other optimizations.
Report generated for a sample wordpress site with only Cloudflare CDN; No other optimizations were made
P.S: Page load speed and score are subject to change based on certain things like their web hosting server, the technology used and implementation, etc.
In conclusion, every business owner is an optimist who visualizes the moment where their site lands them on cloud nine by attracting a lot of users in a short span of time. That is undoubtedly the best feeling in the world. But rather than enjoying it, they may begin to worry. Despite the fact a site has a good number of views, there might not be any conversions or leads for the business.
Isn’t it heartbreaking? The Business of a business is to make money, bring profits and attract leads that are converted to successful sales by demonstrating their potential. Using a CDN efficiently can be handy in enhancing your site’s SEO score which could, in turn, improve the conversion rate. I hope my perception is convincing and hopefully, it makes sense.
Lastly, it is prudent to make sure that your site is prepared to handle a massive amount of traffic. Using a CDN can split your website’s traffic and bandwidth usage across multiple edge servers as explained earlier.
Come on, don’t hesitate to invest your time and money in implementing a CDN for your site which is capable of attracting a good global traffic. Let’s kick start using a CDN; it could turn out to be a successful venture.