Service FabriC语言 可靠的服务生命周期 - 是否可以在运行异步函数之前调用侦听器



根据官方文档: https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-reliable-services-lifecycle

">

  1. 服务已构造。

  2. 然后,同时发生两件事: 调用 StatelessService.CreateServiceInstanceListeners(( 并打开任何返回的侦听器。ICommunicationListener.OpenAsync(( 在每个侦听器上调用。 调用服务的 StatelessService.RunAsync(( 方法。

  3. 如果存在,则调用服务的 StatelessService.OnOpenAsync(( 方法。此调用是不常见的替代,但它是可用的。此时可以启动扩展服务初始化任务。 ">

因此,如果 CreateServiceInstanceListeners 可以在 RunAsync 之前调用,这是否也意味着外部服务可以在调用 RunAsync 之前调用服务的 API? 或者由于第三步是OnOpenAsync,我们保证我们的服务API方法将在第三步完成后触发(意味着RunAsync已经开始(?

  • 那么,如果 CreateServiceInstanceListeners 可以在 RunAsync 之前调用,这是否也意味着外部服务可以在调用 RunAsync 之前调用服务的 API?

是的,只要打开通信侦听器,就可以呼叫它们。 内部 OnOpenAsync 用于内部组件。

不会在次要副本上调用 RunAsync,但它们可以创建侦听器。

最新更新