rmq-pub-sub
v1.0.2
Published
Designed based on the RabbitMQ Pub-Sub.
Downloads
6
Maintainers
Readme
rmq-pub-sub
rmq-pub-sub
is designed based on the RabbitMQ Pub-Sub functionality. A easier way to call a function named RMQPubStream to Produce any stream and consume by RMQSubStream.
Table Of Contents
$ npm i rmq-pub-sub
or
$ yarn add rmq-pub-sub
This example shows you how to create microservice and add pub-sub to communicate between services by rmq-pub-sub
.
Project Structure
Note: Create NodeJS environment in both service-1 and service-2 and create server using your favourite NodeJS framework.
service-1/server.js
const RMQPubStream = require('rmq-pub-sub/RMQPubStream');
app.post('/send', async (req, res) => {
const fakeData = {
Name: "Md. Muhtasim Fuad Fahim",
Email: "[email protected]",
};
const produce = await RMQPubStream("FAKE_DATA", fakeData);
console.log("Producer: ", produce);
return res.status(200).send("Done!");
});
service-2/server.js
const RMQSubStream = require('rmq-pub-sub/RMQSubStream');
(async function rmqData() {
await RMQSubStream("FAKE_DATA").then((data) => {
console.log("CONSUME: ", data);
});
})();
service-1/.env & service-2/.env
AMQP_URL = "amqp://localhost"
Pull RabbitMQ docker image by the following command
docker run --name rabbitmq -p 5672:5672 rabbitmq
Now run the both services in your machine and hit the API: http://localhost:${PORT}/send
🥳
- Fork it 😎
- Create a feature branch:
git checkout -b my-feature
- Add your changes:
git add .
- Commit your changes:
git commit -m 'My new feature'
- Push to the branch:
git push origin my-feature
- Submit a pull request
- Fork it 😎
- Clone forked repository:
git clone https://github.com/username/forked-name.git
- Install the dependencies from root directory:
npm install
- Rename
.env.example
to.env
- Now run:
npm run test
ornpm run test:watch
ornpm run coverage
& see the results 🥳
See CHANGELOG.md.
rmq-pub-sub
is licensed by MIT License.
Copyright © 2023 Md. Muhtasim Fuad Fahim
- Github: @mdmuhtasimfuadfahim
- LinkedIn: @mdmuhtasimfuadfahim