【问题标题】:In Orleans when to use IGrainFactory vs IClusterClient在奥尔良,何时使用 IGrainFactory 与 IclusterClient
【发布时间】:2020-06-09 23:04:57
【问题描述】:

这是一个采用共同托管模型(ASP.NET - Web API 和 Orleans)的 Orleans 应用程序。 我能够将 IGrainFactory 或 IClusterClient 注入 webapi 控制器。 两者似乎都能很好地完成工作。

我想了解一下,什么时候用IGrainFactory,什么时候用IClusterClient?

【问题讨论】:

    标签: c# asp.net-core .net-core orleans


    【解决方案1】:

    IClusterClient 旨在从访问 silo 集群的客户端使用。在您的情况下,它是 webapi 控制器。 IGrainFactory 用于筒仓内的服务类中以获取 Grain 的实例。

    也许下面的文章可以提供一些启示。 https://github.com/dotnet/orleans/issues/988

    【讨论】:

    • 你可以使用任何一个。无论您是在孤岛还是外部客户端(例如 Web 前端)中,IClusterClient 和 IGrainFactory 都可供您使用。您选择哪一个取决于您,但通常我会建议使用 IGrainFactory。 IClusterClient 实现了 IGrainFactory 并添加了一些其他方法。大多数这些方法都特定于外部客户端(连接、中止),但也有用于访问流的 GetStreamProvider。
    猜你喜欢
    • 1970-01-01
    • 2017-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-27
    • 2017-02-11
    • 2016-06-23
    • 1970-01-01
    相关资源
    最近更新 更多