CC is a new taxi agency with huge potential. Today, the company has just two taxi drivers and two developers, but they want to expand a lot in the upcoming year. CC has already built a website in Ruby and started out with a backend, also written in Ruby, that stores CC trips in a database. CC also has some scripts, written in Python, that generate route reports.
So far, CC's system runs as follows:
- The company's website and blog runs on Ruby.
- The Rich Internet Application that stores route data, such as the starting point and the endpoint of the trip, is written in Ruby.
- There's a back-office that sends route updates to drivers and is written in Ruby.
- Multiple ad hoc Python scripts are used to extract and message data to generate route reports.
- Taxi applications are written in Python.
The old architecture is illustrated as follows:
Fig 1.12: CC software landscape
Why is CC looking at adding RabbitMQ to an already busy environment? The main reason...