RabbitMQ:
Advantages: Lightweight, fast, easy to deploy and use, with flexible routing configuration
Disadvantages: poor performance and throughput, not easy to carry out secondary development
RocketMQ:
Advantages: good performance, stable and reliable, active Chinese community, fast response.
Disadvantages: poor compatibility, but with the expansion of random influence, the problem will be improved
ActiveMQ:
At present, message queues have in-depth applications on major Internet platforms, especially e-commerce platforms such as JD, Taobao, Qunar and other websites. The main function is high concurrent access peaks. The asynchronous message mode reduces website response time and improves system throughput. . ActiveMQ, as one of many MQs, and also the oldest one, has its advantages: 1) Multi-programming language and multi-protocol support. 2) Fully support JMS1.1 and J2EE 1.4 specifications 3) Support for Spring, ActiveMQ can be easily embedded into the system using Spring 4) Designed to ensure a high-performance cluster.
Kafka:
Advantages: powerful performance and throughput, good compatibility.
Disadvantages: due to the high latency caused by "collecting a wave and processing", it is possible to repeatedly consume messages
As a microservice architect with rich experience, I am often asked: "Should I choose MQ or Kafka?". For some reasons, many developers will treat these two technologies as equivalent. Indeed, there is no difference between choosing RabbitMQ or Kafka in some case scenarios, but there are many differences in the underlying implementation of these two technologies. Different scenarios require different solutions. Choosing a wrong solution can seriously affect your ability to design, develop, and maintain software.
The topic of this issue of the editor summarizes the four mainstream message middleware study notes that are full of uncommon technical points on the market, categorized and sorted out MQ (ActiveMQ/RabbitMQ/RocketMQ) + Kafka and other pure handwritten combat + principle integration Take notes, students in need will pick up at the end of the article!
The first material: Kafka actual combat notes
- Getting started with Kafka
- Why choose Kafka
- Karka installation, management and configuration
- Kafka cluster
- The first Kafka program
- Kafka producer
- Kafka consumers
- Deep understanding of Kafka
- Reliable data transfer
- Integration of Spring and Kalka
- Integration of Sprinboot and Kafka
- Kafka actual combat: cutting peaks and filling valleys
- Data pipeline and streaming (just understand)
Kafka actual combat: cutting peaks and filling valleys
The second data: ActiveMQ actual combat notes
- Getting started with ActiveMQ
- ActiveMQ installation
- Native JMS API operation ActiveMQ
- Spring and ActiveMQ integration
- SpringBoot and ActiveMQ integration
- ActiveMQ message composition and advanced features
- ActiveMQ enterprise interview classic questions
The third piece of information: RabbitMQ actual combat notes
- 1. Overview of message middleware
- 2. Install and configure RabbitMQ
- 3. Getting started with RabbitMQ
- 4. AMQP
- 5. RabbitMQ working mode
- 6. Spring Boot integrates RabbitMQ
- 7. RabbitMQ Advanced
- 8. RabbitMQ cluster
- 9. RabbitMQ high availability cluster [extended]
- 10. RabbitMQ application and interview
The fourth data: RocketMQ actual combat notes
- Introduction to RocketMQ
- Sending of messages in RocketMq
- RocketMQ message consumption
- In-depth messaging
- In-depth message mode
- Sequential message
- Delayed message
- Dead letter queue
- Consumption idempotence
- Message filtering
- RocketMQ storage outline design
- Transaction messages in RocketMQ
- RocketMQ master-slave synchronization (HA) mechanism
- Limited time order combat
- RocketMQ source code analysis