Service Fabric Actors:使用最新版本的 Service Fabric nuget 包部署 Actors 时出现的问题
Posted
技术标签:
【中文标题】Service Fabric Actors:使用最新版本的 Service Fabric nuget 包部署 Actors 时出现的问题【英文标题】:Service Fabric Actors: Problems when actors are deployed with newest versions of Service Fabric nuget packages 【发布时间】:2018-11-06 20:22:54 【问题描述】:昨天我创建了一个新的服务结构应用程序,包括一个新的 Actor。当我将它部署在本地服务结构集群上时,发布状态为“成功”。 但问题是,当我继续使用 Service Fabric 集群时,我可以看到参与者处于“错误”健康状态。 我可以向您显示有关诊断事件和 Server Fabric Explorer 的错误消息:
Service Fabric Cluster Explorer [IMAGE]
Diagnostic Events errors [IMAGE]
为了向您展示我的问题,我使用 Visual Studio 创建的常用 actor 示例创建了一个简单的解决方案,它应该可以正常工作。 我创建了一个 .Net Core 2.0 Actor Service。 Actor Service
actor使用的nuget包有:
Microsoft.ServiceFabric (6.2.274)
Microsoft.ServiceFabric.Actors (3.1.274)
Microsoft.ServiceFabric.Data (3.1.274)
Microsoft.ServiceFabric.Services (3.1.274)
我的 Visual Studio 使用版本 15.7.2,Service Fabric 运行时使用最新版本 6.2.274.9494。
我还有另一个解决方案,它与演员一起使用具有先前版本的 nuget 包,可以正确部署并在服务结构上工作。
当我将服务结构包更新到最新版本时,服务结构资源管理器上的参与者出现错误。 所以我可以推断这些错误可能是由最新版本的 service fabric nuget 包产生的。
最好的问候,
亚历山大
【问题讨论】:
确保您的服务结构升级模式设置为自动 - snag.gy/ROcSQ5.jpg 我的本地 Service Fabric 群集上没有该选项,该群集安装在我自己的计算机上 6.2/3.1 软件包不向后兼容 6.1/3.0 SDK,这将导致演员无法启动。你能确定你真的使用的是最新的 SDK 并重启了机器和集群吗? 【参考方案1】:这似乎是 .NET Core 2.0.5 之前版本的问题。 安装最新的运行时(当前为 2.1.1)并更改服务结构参与者项目以使用它解决了该问题。
【讨论】:
以上是关于Service Fabric Actors:使用最新版本的 Service Fabric nuget 包部署 Actors 时出现的问题的主要内容,如果未能解决你的问题,请参考以下文章
如何为远程 Service Fabric 集群创建 Actor 代理
Service Fabric Actor 备份适用于 1 个参与者,而其他所有参与者都失败