https://github.com/et1975/fsbunny
F# API for streaming over RabbitMQ
https://github.com/et1975/fsbunny
event-driven fsharp rabbitmq
Last synced: 8 months ago
JSON representation
F# API for streaming over RabbitMQ
- Host: GitHub
- URL: https://github.com/et1975/fsbunny
- Owner: et1975
- License: other
- Created: 2017-05-06T15:45:11.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2018-10-29T20:12:44.000Z (over 7 years ago)
- Last Synced: 2025-09-14T20:47:46.309Z (9 months ago)
- Topics: event-driven, fsharp, rabbitmq
- Language: F#
- Homepage: https://et1975.github.io/FsBunny
- Size: 166 KB
- Stars: 9
- Watchers: 6
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
FsBunny [](https://ci.appveyor.com/project/et1975/FsBunny) [](https://travis-ci.org/et1975/FsBunny) [](https://badge.fury.io/nu/FsBunny)
=======
FsBunny implements a streaming API over RabbitMQ optimized for implementation of event-driven systems.
The core idea is that while there are many streams carrying many messages using many serializers, each stream is dedicated to a single type of message serialized using certain serializer.
It works under the assumptions that:
- We never want to lose a message
- The exchange + topic tells us the message type (as well as serialization format)
- The consumer is long-lived and handles only one type of message
- The consumer decides when to pull the next message of a queue
- The publishers can be long- or short-lived and address any topic
- We have multiple serialization formats and may want to add new ones easily
These assumptions may not be suitable in all scenarios, but they map extremely well to event-driven processing.