首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Microsoft Orleans - grains呼唤grains

Microsoft Orleans - grains呼唤grains
EN

Stack Overflow用户
提问于 2021-03-12 22:33:41
回答 1查看 152关注 0票数 0

我正在调查微软的Orleans。我已经在docker中设置了一个集群,tt工作得很好。我正在尝试阅读有关消息传递的文档,但似乎找不到有关重试的任何内容。如果我有一个颗粒叫做一个颗粒,就像这样:

代码语言:javascript
复制
   public class HelloGrain : Orleans.Grain, IHello
    {
        private readonly ILogger logger;
        private IOtherGrain otherGrain;

        public HelloGrain(ILogger<HelloGrain> logger)
        {
            this.logger = logger;
        }

        public override async Task OnActivateAsync()
        {
             otherGrain = GrainFactory.GetGrain(this.GetPrimaryKeyString());
             await base.OnActivateAsync();
        }

        Task<string> IHello.SayHello(string greeting)
        {
            string otherGrainReturn = await this.otherGrain.MethodAsync();
            return Task.FromResult($"\n Client said: '{greeting}', so HelloGrain says: Hello!");
        }
    }

string otherGrainReturn = await this.otherGrain.MethodAsync();是否以某种方式在失败时被重试?决定调用何时失败的仅仅是一个超时吗?这是作为一个基本的HTTP调用来处理的吗,因此我应该重试自己吗?

如果能链接到文档,说明更多相关内容(至少一次,重试等),那就太棒了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-19 20:27:22

您可以看到here按照设计,Orleans没有任何类型的重试策略。

但您可以使用简单的try catch块(或使用特定的库,如Polly)自行添加它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66601853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档