UNPKG

replay-rabbitmq

Version:

RabbitMQ wrapper for Replay project

64 lines (44 loc) 1.86 kB
# RabbitMQ wrapper for Replay project. ## Installation of RabbitMQ Simply download and install [RabbitMQ 3.6.4](http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.4/rabbitmq-server_3.6.4-1_all.deb). In order to manage the maximum amount of connections upon launch, open up and edit the following configuration file using nano: ``` sudo nano /etc/default/rabbitmq-server ``` Uncomment the limit line `ulimit -n 1024` (i.e. remove the _'#'_ in the last line), and don't forget to save before exit by pressing CTRL+X followed with Y. ## Management plugin First enable the management plugin by: ``` sudo rabbitmq-plugins enable rabbitmq_management ``` Then visit the following url to view the RabbitMQ management plugin, where you can view connections, channels, queues, and administer the RabbitMQ: ``` http://server-name:15672/ ``` Default Username & Password are: **guest**. If it doesn't work for some reason, maybe RabbitMQ is down. Try running this command: ``` sudo rabbitmqctl start_app ``` ## Environment variables | Name | Description | Default | |----------------------------------|-------------------------------------|-----------------| | RABBITMQ_MAX_RESEND_ATTEMPS | Max attempts to resend messages | 3 | | RABBITMQ_FAILED_JOBS_QUEUE_NAME | Name of the queue for failed jobs | FailedJobsQueue | ## Usage First call to the connect method (which returns a Promise) to connect to rabbit. Then, you can call the rest of the exported methods, such as consume, produce, etc. Jobs that failed more than the allowed amount (RABBITMQ_MAX_RESEND_ATTEMPS) are sent to failed jobs queue. ## Tests We use mocha as our tests framework, therefore install mocha globally: ``` sudo npm install mocha -g ``` Now simply run the tests with npm: ``` npm test ```