Distributed Job processing: RabbitMQ

I have been working for a distributed process. In generic term this is a process which needs to run continuously in a distributed manner by following push-pull communication. RabbitMQ is a great tool to achieve this solution. I’ve extended worker model to integrate publisher along with the same. Continue reading


Supervisord: Parallel child process spawning and monitoring

Supervisord is a simple and popular choice for process monitoring. Supervisord‘s primary purpose is to create and manage processes based on data in its configuration file. It does this by creating subprocesses. Each subprocess spawned by supervisor is managed for the entirety of its lifetime by supervisord. Continue reading

Explaining SQL Explain

MySQL and MariaDB provide a useful EXPLAIN command which analyzes queries and detect potential performance issues. EXPLAIN describes how a SELECT will be processed including information about JOINS. EXPLAIN EXTENDED provides additional information and estimates the number of table rows that are filtered by the condition. Everyone uses this frequently. Now- how to interpret a query’s explain plan-
Continue reading

Transformation from NetBeans to Sublime Text

No, I’m not that vi or Emacs fan. I use vim only when I have to debug something from terminal. I was using Netbeans since longtime. It’s a great IDE. The only major problem is it consumes memory too much. Moreover last few years I’ve been writing bash scripts frequently. Sometimes I had to check in some old Ruby codes. And nowadays for some modules I’m probably going to use Python. So to meet my customized requirements finally I concluded to switch to a lightweight editor. After brief encounters with different other editors, I soon found Sublime Text and have been using it ever since. Its real power comes from the ability to enhance its functionality using Package Control and creating custom settings.
Continue reading