Nitropack review

Those of you who are running some sort of a content management system (CMS) for your websites would be familiar with the problem of improving the site loading speed through different methods. From the age old caching methods of using op cache module, to using an application specific caching method such as WP-Supercache for your WordPress installations, the sheer variety of solutions out there is a lot.

For a non-tech webmaster (these days, this term seems like a conundrum!), it becomes difficult to choose. At the end of the day, what one ends up going for is how fast the website is loading and more importantly how is the web performance of the site.

Let’s take a look at what are some of the common factors that any webmaster would like at for their caching solution.

Server site rendering time

This is effectively how fast is your server giving the response on the browser. Let’s say that you are running a blog on a small instance or a shared hosting solution. This would usually have limited resources associated with it, be it computing or memory. For instance, currently, these pages are being served off a 512 MB droplet.

Needless to say as your traffic increases, these limited resources are then not enough to address the entire traffic and thus, the response time for all your visitors starts to increase. A simple solution for these problems could be to bump up the hardware and increase the computing and memory being made available for the server. The computing speed is obvious, but why the memory you might ask? Well, since most web servers are softwares running on servers (for e.g Apache or Nginx are the servers most commonly used for WordPress), these software processes have to run on the server. The more the traffic, the more the number of processes.

If you are running WordPress and are facing a load of traffic, and if you are running your database on the same server, then you might sometimes be seeing images like the one below –

MySQL error with WordPress

Seems familiar? A common reason for this is when there are too many apache2 processes and not enough memory to handle all of them. The server promptly terminates the other processes, including the MySQL daemon.

Caching to the rescue

This is where server side caching comes to the rescue. Take this blog post for instance. How many times in the week am I going to edit this? Not many right?

In which case, instead of the PHP script executing every time, why can I not serve the static (HTML pre-rendered) version of this post?

WP-Supercache does a good job as a plugin to do this, however, in this case, for supercache to execute, the WordPress PHP scripts are still executing. How can we stop those?

Another option would be to run caching at Apache or Nginx’s level. This is a much better approach since instead of calling PHP scripts, the server will serve the last known cached static file. The problem with this approach is cache management and storage.

With a small server, you may not have a lot of storage, and if you have been maintaining a content heavy site, then caching all pages might be a storage intensive process. The expectation from your instance’s compute power also increases.

This is where you will find reverse proxy servers shining.

Reverse proxy servers

A reverse proxy server is a server that sits in front of the web servers and forwards client requests. One of the older versions for PHP based websites was Varnish. Nginx also offers this, and newer versions of Apache also do offer this functionality.

What the reverse proxy does is for each request, it caches the response from the down stream server and serves that response for each subsequent request. Think of it as a smart cache manager that sites seamlessly between your CMS and the user.

Traditionally, these were a bit difficult to setup, and therefore were the domain of only the tech oriented webmasters. However, of late, there have been a couple of smart SasS based reverse proxies, and that’s what I wanted to write about.

Cloud-based reverse proxies

A cloud based reverse proxy is a reverse proxy server that’s not on your network/server infrastructure, but rather hosted as a separate service that you choose to buy.

I had initially tried Cloudflare, but wasn’t really impressed with the results. There were a couple of Indian service providers as well, but the outcome wasn’t that great.

Then, one of my colleagues pointed me to Nitropack. Getting started with Nitropack was a breeze and I could easily set this up. There was also a plugin to be installed in my WordPress setup and that’s about it. Nitropack even had a CloudFlare integration (since I manage my DNS on CloudFlare), where it made the relevent DNS entries and I was able to use this without too much of a hassle.

I am currently on the free plan, but the immediate impact on my server response times, and my web performance has been substantial.

If you are a website owner and if you have been harangued with web performance issues, do give this solution a try. It makes a sufficient impact on your response times.

Why you should not play with a live WP site

I do most of my experiments on this blog. Whereas most of the experiments are on content and digital marketing, some tend to be technical.

Yesterday, I was trying out the exceptional Pods framework on my blog. In my haste to try out Pods, I skipped setting up a locally hosted WordPress stack and opted to install it on this blog instead.

Continue reading “Why you should not play with a live WP site”

Some WordPress plugins to Enhance WordPress Websites

WordPress plugins

In a prior post we saw 5 wordpress plugins which you should always install. If you have missed that  article then you can read it here.

In a follow-up post we will discuss some more WordPress plugins. Today’s plugin will be those which I and many other WordPress authors use to enhance the visibility and performance of our site.

WP Super Cache

I am in love with this particular plugin as it has helped me a lot in my WordPress development.

All webmasters know that the site response time is an essential part of your Website SEO as well as site statistics. Studies say that most visitors don’t like to wait for more than 10 sec while the site keeps loading. This is one of the main reason behind scrapped articles which results in higher Bounce rates.

WP Super Cache helps you reduce the site load time by serving your site from cache to the visitor. This plugin serves your dynamic site as a static HTML website to the visitor. Thereby reducing the load time significantly. It also has an compress pages option which compresses your JS, Images and other scripts and html adding to the site reduction.

Following are recommended settings in the plugin

  1. PHP caching.
  2. Compress pages.
  3. Don’t cache pages for known users.
  4. Cache rebuild.
  5. CDN support.
  6. Extra homepage checks.

This plugin helped me achieve a Pagespeed of 87 from 81 which is at significantly higher side of the marking being a WordPress news/articles website.

 

WassUp Real Time Analytics

wassup real ime analytics

Wassup is my personal favorite Analysis plugin and I’ve been using this plugin for the past 2 years. Wassup provides almost realtime analysis of the visitors. This plugin comes with a dashboard widget giving an idea of the traffic and online visitors.

When we visit the plugin settings page it provides much more in-depth details of the visits. It provides

  1. IP
  2. Pages visited
  3. Type of visitor (Spam, Spider, Bot, Human etc.) and much more info.

My personal experience shows that the plugin provides almost same statistics as the Google analytics just this is a compact version and worth a try.

 

Adminimize

This particular plugin is most helpful when there are more than one contributors to the site or you are developing a website in which you required to display only certain menus to the user as they may not require most of the menu.

Now WordPress does offer some default role based accesses, however, I have noticed that more often than not these roles are not completely usable.

Adminimize Options

Above image is sufficient to give you a hint at what this plugin is capable in doing.

 

Enable Media Replace

enable media replace plugin

This is a real helpful plugin. Most developers have a habit of uploading new content on the site when any wrong media files are uploaded. But mostly they forget to delete old incorrect files. Enable media replace helps in such situation.

When installed and activated this plugin puts a  Upload new File button in the media file .

This can be found in Media →Media File Name

In this it allows to replace the media file with the new one and also it replaces all the references of the old file in complete site with the newer file.

 

NextScripts: Social Networks Auto-Poster{SNAP}

snap

SNAP is a very helpful plugin for connecting all the social media to the wordpress blog. All the SMO’s out there love such plugins as these reduce their efforts.

WebMaster have to just write the article. SNAP will automatically post the said article to all the connected and configured social media accounts.

Following is the networks supported by the plugin

Blogger/Blogspot Delicious.
Diigo Facebook
FriendFeed Instapaper
Google+ (with third party API library) LinkedIn
LiveJournal Pinterest (with third party API library)
Stumbleupon Tumblr
Twitter Plurk
vBulletin vKontakte(VK.com)
WordPress YouTube

Free version of the site allows adding only a single account of all above mentioned social sites.