grpc事件流/推送通知

时间:2018-03-26 06:41:27

标签: c# scalability publish-subscribe grpc

我正在为域对象创建一个类似“属性”的界面。这意味着当房产发生变化时应通知客户。

目前似乎Grpc wants me创建了一个长期存在的流:

// .proto file
    rpc Events(Empty) returns (stream Event){}
...

// client code
// for every subscribed event:
var events = _client.GetEvents(empty).ResponseStream;
while (await events.MoveNext()) {
    HandleEvent(events.Current);
}

“长期流媒体”调用适用于简单的案例。但是这些调用中的每一个都会导致服务器端线程。我的解决方案无法扩展到多个观察者。

这个问题可以在Grpc中解决吗?或者我必须确保我只使用尽可能少的事件监听器?或者为服务器使用不同的协议 - >客户端流?

0 个答案:

没有答案