Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rob-blackbourn/depreacted-jetblack.messagebus
https://github.com/rob-blackbourn/depreacted-jetblack.messagebus
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/rob-blackbourn/depreacted-jetblack.messagebus
- Owner: rob-blackbourn
- License: mit
- Created: 2015-06-02T14:37:32.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-05-16T16:11:01.000Z (over 8 years ago)
- Last Synced: 2024-03-15T00:56:03.600Z (8 months ago)
- Language: C#
- Size: 255 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: License.txt
Awesome Lists containing this project
README
# Some message bus examples
This is work in progress!
I am re-writing the real time message bus, that you can find a small version of on github (JetBlack.TopicBus),
and a more complete version on codeplex.I have completed the following goals (note the tenses!):
* I wanted to use reactive extentions to simplify the threading and locking. A version of this exists in JetBlack.TopicBus, and I have done some more work to simplify the approach here.
* I wanted to convert the network layer to use reactive extensions as it seemed like a more natural way to express the solution. I wanted to make full use of async/await calls to keep the code simple and efficient. You can find some experiments on this in JetBlack.Networks.
* I wanted to make the distributor data agnostic. My original implementation serialised a dictionary of known types.The following is on my todo/wish list.
* Understand the close and fault behaviour of clients and the distributor.
* Improve the client adapters. A naive user should not need to know about network addresses or the dynamics of sockets and address resolution.
* Add authentication. I would like to support an SASL style authenticator that is OS agnostic.
* Add authorisation. Many data feeds have permissioning, such that data should only be distributed to those that are paying for it. This is often true at the field level. I need to do this without the distributor knowing the structure of the data.