The command line has been the primary interface for Unixes for over 40 years now. It’s design is reminiscent of it’s terminal roots, and it has remained much the same in form and function for decades now.
The terminal, or shell (as we will call it), is batch oriented, i.e: it runs one command at time. But that’s just one part of it. The shell also supports parellel processing, i.e the ability to run multiple commands, asynchronously from a single script. Parellel processing is an old problem and is supported in various ways. In this article I will explore some solutions in BASH , the ubiquitous shell on Unixes, and talk about the pros and cons of each.
HAProxy is a reliable and high performance load balancer for TCP and HTTP(S) based applications.
There are several detailed tutorials around the web on how to install HAProxy. As is usual of my “Tech Recipe” posts, I’ve boiled those instructions down to the quickest way to have HAProxy installed and running on your Ubuntu machine. You will have a running and configured version of HAProxy 1.5 running in under 2 minutes, and ready to go into production. Continue reading
RabbitMQ is an implementation of AMQP, the emerging standard for high performance enterprise messaging. The RabbitMQ server is a robust and scalable implementation of an AMQP broker.
I recently had to setup a RabbitMQ cluster from scratch on a brand new Ubuntu 14.04 server. This is easy. Continue reading
In an earlier post I summarized a series of git commands to work with branches. In this post, I attempt to classify those commands, according to their purpose. My approach in this article is to take a series of common development scenarios using git and see how we can solve them. At the end of the article we will use what we have learnt (and some) to create a couple of useful git aliases.
This is a repost of an old article i had written in 2012 on posterous.com. Posterous shut down
I was recently invited to an interview by a well respected internet company in Bangalore to interview for a web development role. I thought this would be a Continue reading
Ever wondered if there was a quick guide to working with branches. Sure there’s Git SCM and Git Ref, but it’s not always obvious what that one line of code is that you need, right now!. So here’s my attempt to address the issue. For those familiar with git, but don’t quite know what command to run.
This is a list of git commands for common situations when working with branches. It addresses branch creation, discovery and syncronization. Continue reading
Normally for this kind of task you would do a `sudo apt-get install redis-server`, but you’ll only get Redis 2.2. The current stable release is 2.8, and that’s not even in Ubuntu 13.04. You can download and make manually, but there’s a simpler way.