Wednesday, April 27, 2011

Why KNEC should look at their servers!

When the Kenya National Examination Council (KNEC) released the 2010 examination results late February this year, my kid brother spent lots of money trying to access his results from a cyber in town. The KNEC portal took time to load and display the results, Ian turned to sending an SMS request on the same, in vain.

The council so far has done well by keeping abreast with technology solutions to deploy exam results via their website and the short message service. Despite this bright initiative by KNEC to increase efficiency in results collection by former candidates, their systems fail when a number of requests are sent to the servers at that specific time.
This however is not the first time former candidates experience this problem, it has been an issue over the years since KNEC implemented this response system. Let us have a look as to why this happens and possible solutions that can be implemented to address the problem.

Server optimization
KNEC provides examination results in two major ways, i.e. either students access them on their website or send request messages to their servers.  Well, SMS becomes the better option because of accessibility to internet facilities might be hard in some parts of the country. Though, this becomes a tricky affair, why! Because service providers only lease bandwidth for SMS transmission, they are not really involved with how the servers synchronize these lines of passage.  

Therefore the SMS system does not carry the blame as much other than proper management of this traffic which mainly involves having sufficient bandwidth to do so.

The real issue here again lies on their servers; KNEC should conduct a proper optimization of their database systems for these new result outlets to work efficiently.

Scalable shared hosts
Take an example of Amazon S3 and Media Temple VPS server facilities. These two have ability to serve replies to thousands of result requests simultaneously hence without any delays.

As everything boils down to the KNEC servers, I believe they are on a shared host that is not scalable under heavy load. My take, the council should operate scalable servers which have virtual storage spaces where by when new data is moved on the private servers, it replaces the old data which then can be stored in web based support hosted on local servers.

Sensible dedicated virtual servers
A clear picture on the fundamentals of this issue; All the other modules of the KNEC website excluding the examination results database occupies a few megabytes, lets says 30MB on the higher level.
A MySQL database with 360,000 records, a rough estimate of candidates who sit for KCSE examination each year gets to occupy around 30GB of the storage system.

When we compared KNEC servers with what MediaTemple as an example, http://mediatemple.net/webhosting/dv/ are offering as a dedicated virtual server is imaginable. Not only is it efficient but the capacity is enormous too. For USD 150 per month the council gets 100 GB of hard disk space, which in this case it can hold 30 years of student’s records inclusive of other modules of the website.

Narrowing down to the random memory (RAM) capacity needed, MediaTemple offers 2GB RAM for this package, and considering a complex web script only operates comfortably with 4MB of RAM capacity.

KNEC claims that the problem lies with heavy SMS traffic experienced during core times when they release results. According to our analysis, this problem is accounted to a bracket of issues, not only the clogged traffic but also server optimization problems. Relating back to my example as they claim; MediaTemple package includes 2TB (Terebyte) of bandwidth capacity to carry SMS while each SMS request needs only a KB of the bandwidth.

When it comes to cost it’s a whole point all together, let’s do the math; the cost of hosting this service at MediaTemple is USD 150 a month, when we convert to Kenyan Shillings it means out of the 360,000 possible text request, 12000 requests covers the cost of hosting KNEC services in these efficient servers. This is when the council charges KSH 10 for every SMS exam result request send by a former student.

No comments:

Post a Comment