【问题标题】:How to pass agruments to ServiceFabric Actor/StatefulService?如何将参数传递给 Service Fabric Actor/Stateful Service?
【发布时间】:2019-01-28 18:53:21
【问题描述】:

我有一个 ServiceFabric Actor,负责处理发送给它的轮流请求以检查库存是否可用。

这些请求被发送到有状态服务,该服务检查库存是否可用,并相应地返回真/假(除其他外)。

为了让它正常工作,我需要能够在 Actor 被激活(或初始化?)时传递inventoryId,以便它也可以初始化/激活有状态服务以加载 Inventory 配额和相关信息来自数据库。

如何在构造函数中将参数传递给 Actor 和 Stateful 服务?我目前正在求助于在每次调用中将库存 ID 传递给参与者,并始终检查 Service 是否已初始化。随着我添加越来越多的方法,这变得多余了。

有什么想法吗?

【问题讨论】:

    标签: azure-service-fabric


    【解决方案1】:

    也许您可以将inventoryId 用作管理服务生命周期的ActorActorId。 (所以每个inventoryId都有一个Actor实例。)

    然后,Actor 也可用于使用 inventoryId 初始化服务。

    最后,Actor 可用于返回创建代理以调用服务所需的信息(服务名称和可能的分区信息)。

    【讨论】:

    • 您好,这正是我最终所做的。因为我们是一个多租户场景,所以我将tenantId:inventoryId 作为actor Id,并在构造函数中将其拆分以初始化tenantId 和inventoryId,这样我就可以使用这两个参数加载库存。感觉很笨拙,但可以完成工作。想知道是否有其他方法,但它可能看起来不像。
    猜你喜欢
    • 1970-01-01
    • 2016-03-11
    • 2018-01-11
    • 2020-04-03
    • 1970-01-01
    • 2017-11-09
    • 2017-07-19
    • 2012-04-14
    • 2017-09-20
    相关资源
    最近更新 更多