- RabbitMQ Essentials
- Lovisa Johansson David Dossot
- 318字
- 2021-06-11 18:49:51
A RabbitMQ scenario
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:

Why is CC looking at adding RabbitMQ to an already busy environment? The main reason is because of a new feature CC wants to offer to their customers – they want to build a taxi application that handles reservations on the go. CC also wants to be able to scale painlessly. The plan is to build an app where users can book a car via a smartphone, receive booking confirmation, and view the car approaching the starting point of the trip.
Since CC already has some services in different languages, and since CC wants to be able to scale easily, they decided to use a ready-made message-oriented middleware such as RabbitMQ for asynchronous communication between the app, the client, and the backend.
As CC's knowledge and usage of RabbitMQ increases, they will discover new opportunities to leverage it in the environment. For now, let's follow CC as it gets started with its very first step into working with RabbitMQ.
- INSTANT OpenCV Starter
- PaaS程序設(shè)計(jì)
- Mastering matplotlib
- INSTANT Weka How-to
- Java Web程序設(shè)計(jì)
- Web程序設(shè)計(jì)(第二版)
- Spring Boot企業(yè)級(jí)項(xiàng)目開(kāi)發(fā)實(shí)戰(zhàn)
- Apache Kafka Quick Start Guide
- ServiceNow:Building Powerful Workflows
- Visual Studio 2015高級(jí)編程(第6版)
- C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)教程與水平考試指導(dǎo)
- Web程序設(shè)計(jì):ASP.NET(第2版)
- 深度學(xué)習(xí)程序設(shè)計(jì)實(shí)戰(zhàn)
- Laravel Design Patterns and Best Practices
- 從零開(kāi)始學(xué)UI設(shè)計(jì)·基礎(chǔ)篇