Just in case you haven’t notice, I have added in a Featured Section under Blog on the sidebar located on the right.
This featured section will contain blog posts with original content categorized by their respective companies. Original content in the sense that they are not from press releases or copied and pasted from somewhere else. These original content are either compiled by me (example: SingTel) or they can be items bought by me (example: Bluelounge).
For a start, I have listed 4 companies, and here they are:
I will add in more companies into the featured section when I have enough content to show.
I have joined the Microblogging bandwagon and Posterous is my weapon of choice. I chose Posterous over Tumblr because the UI of Posterous is clean and intuitive and even the Posterous’s iOS App is pretty well done.
Personally, I think Tumblr has too much features for me such as the sharing of Text, Photo, Quote, Link, Chat, Audio and Video. I personally going to use a microblogging service to share photos with some text only and hence Posterous fits my needs.
Posterous also supports CNAME mapping and hence my Posterous address is:
I have also made some changes to the site, bumping the version to 3.50 (if anybody is interested in the version number):
Spend the weekends trying to get Cacti up and running on this VPS. Apparently since this VPS is using WHM on CentOS, there are some packages like Apache, PHP, MYSQL, Perl, Ruby installed directly but not indicated as installed via Yum and hence it is failing dependency check when trying to install rrdtool.
What is Cacti
Cacti is a complete network graphing solution designed to harness the power of RRDTool’s data storage and graphing functionality. Cacti provides a fast poller, advanced graph, multiple data acquisition methods, and user management features out of the box. All of this is wrapped in an intuitive, easy to use interface that makes sense for LAN-sized installation templating s up to complex networks with hundreds of devices.
What is RRDtool
RRDtool is the OpenSource industry standard, high performance data logging and graphing system for time series data. RRDtool can be easily integrated in shell scripts, perl, python, ruby, lua or tcl applications.
Spent almost the whole day trying to get that installed but to no avail. Found this tutorial, Install RRDTool on Red Hat Enterprise Linux, followed it and I managed to get rrdtool up and running.
Next was the easy step which is to download Cacti and upload it to this server. PHP and MYSQL is needed to run Cacti and hence you need to create a MYSQL database and account for Cacti.
Once that is done, remember to import the existing database data/structure in cacti.sql into the database, if not you will get segfault errors when accessing your Cacti.
You will also need to create a cron job that runs once every 5 minutes to populate contents for Cacti, refer to Install and Configure Cacti.
Now what you need are templates/graphs to monitor your Apache, MYSQL, Memcached and even your server. For Apache and MYSQL you can use mysql-cacti-templates, even for Memcached, you can use that, but personally I am using memcached Cacti Template.
Remember that each scripts you download requires configuration in the script itself.
Everything is up and running, now it is the time to create a custom graph if you want, you can take a look at Making Your Scripts Work With Cacti.
I created a custom script to pull the number of usersonline on my site via my WordPress WP-UserOnline plugin and populate it in Cacti.
If you are using iPhone/iPad, there is also an app for it called iCacti (Universal App) which cost USD$3.99. I bought it instantly when I discovered that there is an app for Cacti. Works well with https/http auth and normal login.

Blog – UsersOnline (Custom)

Server – Load Average

Apache – Requests

MYSQL – Command Counters

Memcached – Requests Per Second
Every since my WatchMouse Public Website Health Status was setup for this site on 17th March 2011, I have been getting “Performance issues” with a yellow icon besides it everyday.

Response Time Since 17th March 2011
That kinda irritated me. So on Saturday, 26th March 2011, I decided to optimize the site. I switched the home page to display 5 posts instead of the previous 10 posts so that it loads lesser stuff, but apparently it does not make a significant difference.
I found out that it is because of W3 Total Cache Minify and CDN options. Apparently, when these 2 options are enabled, it will parse your HTML output and minified any embedded Javascript in your page or replace URLs with CDN URLs if needed. And these are causing the overhead in processing.
What I did was to turn both options off and manually hardcode the CDN URLs inside my templates. Thanks to WordPress Filter APIs, I just need to do it in one file! My JavaScript are already minified by default, so I did not do anything to it.
And the result is a reduction of 2,000ms!
View: Current Performance and Availability Status lesterchan.net
Sometimes when you visit the site, it will return you a blank page or give you a null response back, for example:
$ curl –head lesterchan.net
curl: (52) Empty reply from server
I have still yet to figure out the problem yet. But it seems a simple Apache restart does solve the problem. I have about 2GB of RAM on this VPS server and I don’t think it is out of memory because I did check the RAM when this happens and it seems I still have more than 1GB available. Apache processes appears to be running as well. The last thing I installed on this server is XCache 1.3.1, I wonder if it has anything to do with it.
But anyway, I have been using Pingdom for a couple of years and it has a nice iPhone App that alerts you via Push Notification if your server is down. I have it check my site every 5 minutes.
I recently tried out WatchMouse as recommended by colleagues and it seems much better than Pingdom in terms of features and node locations. But it is a little expensive (cheapest is USD$35 per month), considering I don’t earn anything from this site. There is a free account on it though, I just have to put up a small banner on my site (which I did on the right menu). The free account is good enough for me, they check this site once every 20 minutes for the free account.
The feature I like most about WatchMouse is the Public Website Health Status Page and it is available on the free account as well, check out, http://status.lesterchan.net/ (yeap, they even allow you to have CNAME). I have also set up a new Twitter account, @lcstatus which basically adds like a RSS feed for http://status.lesterchan.net/ (announcements section).
A WatchMouse Public Status Page enables your organisation to display information about the availability and performance of your critical services. You can post announcements, annotate current issues, and optionally set up a special host name (CNAME) so people can access the status page using your domain name, e.g. status.yourdomain.com. It is an easy control channel through which you can transparently inform visitors about the status of your sites and web services.
All WatchMouse Public Status Pages are hosted on Amazon’s Cloud infrastructure so they are available even if your site or service is not.
Users: 47 Guests, 8 Bots