Skip to content

mohammedsohail-dev/Java-RabbitMQ-Demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

RabbitMQ Topic Exchange System with MongoDB Integration

Java RabbitMQ MongoDB gRPC Maven

A high-performance messaging system using RabbitMQ topic exchanges with MongoDB persistence and gRPC support.

Key Features

  • RabbitMQ Topic Exchange implementation (amqp-client 5.15.0)
  • Multiple specialized consumers with different routing patterns
  • MongoDB integration with both legacy (3.12.12) and modern (4.2.0) drivers
  • gRPC support (1.15.1) for high-performance RPC
  • Protocol Buffers serialization (protobuf-java 3.6.1)
  • Configuration management via external Config.txt

Technology Stack

Core Dependencies

  • Messaging: com.rabbitmq:amqp-client:5.15.0
  • Database:
    • org.mongodb:mongo-java-driver:3.12.12
    • org.mongodb:mongodb-driver-core:4.2.0
  • RPC:
    • io.grpc:grpc-*:1.15.1
    • com.google.protobuf:protobuf-java:3.6.1
  • Utilities:
    • javax.annotation:javax.annotation-api:1.2
    • jakarta.servlet:jakarta.servlet-api:4.0.2

Project Structure

image

Advanced Features

gRPC integration for high-performance service communication

Protocol Buffers for efficient message serialization

Development Notes

The project uses Maven resource filtering for Config.txt

All RabbitMQ connection management is handled in ConnectionManager.java

MongoDB DAOs provide data persistence layer

Build Project

mvn clean install

About

This assignment has the purpose of practising pub/sub message oriented programming.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages