Informative articles on various technologies ...

Presentation: Linux toolbox for monitoring and performance

This is a presentation done on November 2nd, 2009 for the Kitchener Waterloo Linux Users Group on Linux toolbox for monitoring and performance.

Many tools are discussed, including: top, htop, atop, vmstat, netstat, ntop, vnstat, iostat, strace, systemtap, oprofile, apachetop, MySQL processlist, Munin, Awstats, and Google Analytics.


Presentation: Free Software and Open Source Symposium (FSOSS): Open Source for Fun and Profit

These are the slides from a talk done at the Free Software and Open Source Symposium (FSOSS) at Seneca College in Toronto. The attendance was overwhelming with several people standing at the back of the room.

The talk is titled: Open Source for Fun and Profit: making a career out of FOSS, and draws heavily from Khalid's experiences in the Drupal community.


Simple previous / next navigation by node title

We have posted before on how to display previous/next thumbnails for image nodes. We also have a module that is basically a Previous/Next API for high volume / high performance sites.

But sometimes you need a simpler solution for regular nodes, just using the node title and a link to it. This article explains how to achieve that for Drupal 6 in one simple function and a few changes to one .tpl.php file.

First, we start off with the code that does the heavy lifting.

In your theme's template.php add the first function from the attached file. By default it provides paging for blog posts only. You can change that to another type of node (or multiple types).

The code is fast, since it uses the nid as an index. So if you use this on large sites, it would not slow them down.

Then in your node.tpl.php, or node-TYPE.tpl.php, add the second snippet in the attached file. This provides calls to the next/previous node with hyperlinked titles.

For the styling, add the CSS from last snippet in the attached file.


Presentation: The Apache Web Server at the KW Linux Users Group

On Monday Sept 14th, Khalid presented on the Apache Web Server at the Kitchener Waterloo Linux Users Group (KWLUG).

The presentation starts with an overview of the HTTP protocol, then shows off Apache's market share and popularity, as well as use within the top 20 web sites worldwide. Then it delves into the details of installation and configuration, ending with performance and security.

The slides from the presentation are attached.


Performance issues with memcache module 6.x-1.13

A very large site we manage for a client was upgraded recently from the memcache module version 1.12 to version 1.13.

However, the result was less performance for this server that was humming alone happily with the older version.

The Munin graphs tell it all: look at the change at 12:00 noon.

Here is the CPU graph, showing double the CPU utilization on this sever.


Case study: Views, Quicktabs and template.php

Performance troubleshooting and tuning of web sites is often, to paraphrase Winston Churchill, "a puzzle inside a riddle, wrapped in an enigma".

One of those puzzles is how sites are put together: in this case: multiple layers of modules that obscure the real cause of where the slowness of a site is, and a theme for the topping.

Problem and symptoms


Reducing server load by eliminating anonymous sessions for Drupal 6.x

In some large client sites, we see many queries from the session handling code in drupal, mostly from the sess_write() function in includs/

Examples of creating a new session:

INSERT INTO sessions (sid, uid, cache, hostname, session, timestamp) VALUES ('744e888350d5c759f067d58380f6874e', 0, 0, '', '', 1243567441)

And examples for updating a session:



Subscribe to RSS - Articles