MySQL Cluster Getting Started [Redhat/Centos 6]

Installing

1.Download the RPM from MySQL.com

wget http://dev.mysql.com/get/Downloads/MySQL-Cluster-7.3/MySQL-Cluster-gpl-7.3.5-1.el6.x86_64.rpm-bundle.tar 

2.Install the RPM  and dependencies

yum groupinstall 'Development Tools'

yum remove mysql-libs

yum install libaio-devel

rpm -Uhv MySQL-Cluster-server-gpl-7.3.5-1.el6.x86_64.rpm

This installs all the binaries that will be required to configure each component of the MySQL Cluster.

Screen Shot 2014-06-18 at 9.55.52 PM

 

Continue reading…

RabbitMQ Exchange to Exchange Bindings [AMPQ]

Overview

The exchange-exchange binding  allows for messages to be sent/routed from one exchange to another exchange. Exchange-exchange binding works more or less the same  way as exchange-to-queue binding, the only significant difference from the surface is that both exchanges(source and destination) have to be specified.

Two major advantages of using exchange-exhhange bindings based on experience   and what I have found after doing some research are:

  •  Exchange-to-exchange bindings are much more flexible in terms of the topology  that you can design, promotes decoupling  & reduce binding churn
  • Exchange-to-exchange bindings are said to be very light weight and as a result help to increase performance *

Exchange-To-Exchange Topology

 Messaging Topology

Continue reading…

Intro : Celery and MongoDB

This post serves as more of a tutorial to get a  Hello World up and running while using Celery and MongoDB as the broker . Celery has great documentation but they are  in snippets  across multiple pages and nothing that shows a full working example of  using Celery  with MongoDB which might be helpful for new users .

Install All Required Packages

Packages related to Celery.

pip install celery
pip install -U celery-with-mongodb

Ensure that you have MongoDB installed and running. 10gen have great documentation to get you up and running with MongoDB in  no time.

In this tutorial we will only use a single module  for both the celery application and the tasks.

 

1. Create celeryconfig.py

Lets start by first creating a celeryconfig.py that will store  configuration details that will be used to configure Celery to use MongoDb as the results backend and other settings.

2.Create tasks.py(Celery Application and Worker)

 3. Now that we have our application and configs created lets  start it up!

celery -A tasks worker --loglevel=info

Screen Shot 2013-06-15 at 2.46.53 PM

 

4. Now lets create some work items/tasks to be processed.  You can easily create a script , but we used the CLI  in this example.

Celery Tasks

 5. Lets look on the console of the worker to see the jobs submitted.

As you can see tasks were obtained and processed

Screen Shot 2013-06-15 at 2.51.33 PM

 

6. If you are curious about your MongoDB backend . Lets take a look at the collections that will be used to store the results.

Screen Shot 2013-06-15 at 3.02.30 PM

 

Screen Shot 2013-06-15 at 3.03.01 PM

Thats how you get a simple Hello World up and running with MongoDB.  Will be doing a advance blog post where we use Celery and MongoDB with proper production configurations.

 

 

 

Packaging Applications Benefits and Deploying Applications using Windows Server 2003

Windows Server 2003

 

Deploying and maintaining applications across multiple PC’s  across an organization is  demanding and time consuming especially  when machines are constantly being refreshed. Packaging applications, provides a centralized location to automatically manage, deploy, repair and patch applications. A Few of the benefits of packaging applications are:
Continue reading…