berdon / orleans.providers.redis Goto Github PK
View Code? Open in Web Editor NEWRedis stream provider for Microsoft Orleans
License: MIT License
Redis stream provider for Microsoft Orleans
License: MIT License
From looking at the source, it seems this provider is based on simple pub-sub and the queueing of data happens in memory, in the provider itself. I guess this is because this provider was born before redis 5.0 (where streams/lists were added) - it would add resilience and more flexibility if we could use native redis streams as a provider.
https://redis.io/topics/streams-intro
Have you looked at this already?
Why do you use HashRing channels instead of channel per subscription?
For example we have
my-cluster:some_provider_name-1
my-cluster:some_provider_name-2
my-cluster:some_provider_name-3
for all messages
and redis publish to these channels.
But maybe it will be better for performance to publish and subsribe to individual channel for example:
my-cluster:stream_namespace:client_guid
?
When we have persistentstate attribute it have state name, this state should be used for redis key generation because of case when U have multiple states in one grain.
In-bound messages that overflow the RedisDataManager cache end up logging per each message. In high volume scenarios this appears to cause unneeded system strain on the already overtaxed system causing a negative growth spiral.
Why extend ISiloHostBuilder and not IHostBuilder ?
Serilog shouldn't be required - need to fix constructor ILogger arguments.
Hi looks it have no implementation and can make some mess around :)
It would be better to use Microsoft abstraction ILogger for logging purpose and give users to configure loggin solution itself
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.