Migrating from MySQL to Redis

Debates on using relational DBs vs KV Stores apart, In this post, I’d like to share how can you migrate all your data from a MySQL table to Redis - a super fast key-value store; leaving the decision of whether migration is good/bad for your environment up to YOU.

In this tutorial, I have mapped my mysql attributes to a Redis hash map data type with my primary key as a hash key using HMSET, which is one of the commands Redis provides to create redis hashes.

Read More

Synchronous and Asynchronous Programming in GO

GO is a programming language with inherent asynchronous programming abilities created and open-sourced by Google. So,why do I care ? here’s why:

Programming models has evolved from sequential (or synchronous or linear) to parallel (or threaded or distributed) and then to asynchronous (or concurrent or non-blocking), each with it’s own pros and cons. Most of the enterprises use distributed/parallel programming; although it speeds up things quite a bit, it’s a nightmare to manage the thread pools and the delays induced by blocking especially if you have too many distributed micro services juggling and doing magic in the back to provide a comprehensive response which is the key motivation behind the advent of concurrent/async programming. 

Read More

Deploying Django Project on Apache Using mod_wsgi

Fellow programmers, Hello. If you are developing  a web application using Django, I am sure you’ll reach that cusp where your application is running smooth like butter and you start facing scalability issues, Best way to address this is to migrate your Django project from single-threaded server to some good HTTP server like apache. Unfortunately, apache by itself won’t support any python applications to run on it, we need to add few nuts and bolts to do that and I’m gonna tell ya how to add those. 

Read More