Package Exports
- @legend-libs/transactional
- @legend-libs/transactional/dist/index.js
- @legend-libs/transactional/dist/index.mjs
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@legend-libs/transactional) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@legend-libs/transactional
@legend-libs/transactional is a Node.js/TypeScript library designed to streamline communication between microservices using RabbitMQ. It enables easy implementation of event-driven architectures and saga patterns, while ensuring reliable message delivery.
Features
Core Communication:
- Publish/Subscribe Messaging: Exchange messages between microservices using a publish-subscribe pattern.
- Headers-Based Routing: Leverage the power of RabbitMQ's headers exchange for flexible and dynamic routing of messages based on custom headers.
- Durable Exchanges and Queues: Ensure message persistence and reliability with durable RabbitMQ components.
Saga Management:
- Saga Orchestration: Coordinate complex, multi-step transactions across multiple microservices with saga orchestration.
- Saga Step Handlers: Implement step-by-step saga logic in your microservices using callbacks.
- Compensation Logic: Define compensating actions for saga steps to handle failures gracefully and maintain data consistency.
Contributors
Thanks to all contributors!
Author
Jorge Clavijo https://github.com/jym272
License
Distributed under the MIT License. See LICENSE for more information.