Skip to content

Refactor package "rabbitmq" to a concurrent interace #24

@natemago

Description

@natemago

Current implementation of the messaging API in "rabbitmq" package offers a creation of Connection and AMQPChannel which perform dial and queue declare in the same action.
Although Connection is concurrent and it is encouraged to be reused (in go routines), Channel does not seem to be concurrent and causes errors when used with go routines (errors of type "connection closed" when the connection is actually open).

We need to split this API into two parts:

  • First dial to the RabbitMQ server
  • Provide a structure that provide concurrent Send/Receive methods.

This would require an overhaul of the "rabbitmq" package, and would impact the services using this API (namely microservice-mai, microservice-registration and microservice-user).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions