dotnet / dotnet/orleans

How to use persistent streams like "broadcast"?

Open
#8,346 1 comment 1 reaction 0 assignees View on GitHub
Needs: triage :mag:
Dominant language
C#
Stars
10.9k
Forks
2.1k
Avg merge
14h 42m
Merged PRs (30d)
354

Description

Hi everyone,

I have an application that has several grains identified by a key of type String (an alphanumeric).

Reading the Streams documentation, I realized that each stream is identified by a GUID+namespace, and that each grain can only subscribe to that stream if it also has the same key GUID+Namespace. I need a solution similar to broadcast, but reliable and persistent.

So the question is: is there a way to create a single stream (with a fixed GUID) where a group of grains, regardless of their key, can subscribe to that stream?

My scenario is: I have 2 types of grains - Account and Order. At a certain time of the day, I need to notify all Account type grains that a certain routine (an external routine) has been executed, so that they can update their state. How to achieve this with Orleans streams in a reliable way?

Contributor guide

Open the contributing guide

Research direction

Start with the Orleans Streams documentation and the stream subscription behavior described in the issue. Determine whether grains with different keys can subscribe to one fixed-GUID stream and what reliable, persistent pattern fits the Account notification scenario; done means the supported approach and its constraints are documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
distributed-systems
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.