【发布时间】:2021-05-30 15:40:31
【问题描述】:
我在我的一个项目中使用了 Orleans 框架。这是我们谷物的调用模式。
Domain Service ->
Calls CustomerGrain.Save() ->
Call1 CustomerService.Save (external service) -> Saves customer in sql server
Call2 ProfileService.Save (external service) -> Saves customer recent activity in sql server
Call3 Repo.Save ->
Call1 from Repo.Save - Calls Stored proc 1 to save in sql server
Call2 from Repo.Save - Calls Stored proc 2 to save in sql server
- 所有调用都使用异步代码。
- 通常外部服务(使用 HttpClient)或 db 操作调用在所有操作中耗时
- SiloMessagingOptions - ResponseTimeout 根据需要增加。
可以在grain内调用外部服务/数据库操作吗?这种调用模式会在高负载期间引起任何问题吗?喜欢
- Orleans 任务调度程序线程池饥饿?
- 筒仓消息超时
谢谢 达南杰
【问题讨论】:
标签: distributed-system orleans