问题标签 [service-fabric-stateless]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
882 浏览

c# - 打包 SF 无状态 ASP.NET Core Web 应用程序后缺少代码

我创建了一个带有普通无状态服务和无状态 ASP.NET Core Web 应用程序的 Service Fabric 应用程序。在不更改任何默认代码的情况下,我尝试部署应用程序。在部署过程中发生错误:

Register-ServiceFabricApplicationType :
C:\SfDevCluster\Data\ImageBuilderProxy\AppType\AadMockApplicationType 中应用程序的 BuildLayout 无效。服务
TenantWebServerPkg 缺少代码。

检查我的包后,我注意到包不包含代码,而只包含服务清单文件和配置包:

在此处输入图像描述

我的 Web 应用程序服务清单:

尝试了几个小时后,我注意到代码包已发布到不同的文件夹:C:\Users\username\AppData\Local\Temp\PublishTemp\TenantWebServer118

如何正确打包 Web 应用程序以便包含代码包?

0 投票
1 回答
372 浏览

c# - Azure Service Fabric 中的可扩展工作线程

我正在尝试迁移到服务结构现有解决方案。部分原因是侦听队列的工作人员数量。例如我有一些队列:

对于每个队列,都有一些处理它们的消息的逻辑,比如说工人。他们执行不同的任务,例如生成巨大的报告文件并上传到Azure Storage数据库或在数据库中进行小型更新。

问题是如何设计服务以使工作人员具有良好的可扩展性。我的想法是:

选项 1 - 每个队列将有单独的无状态服务。没有简单的方法来自动扩展单一服务。

选项 2 - 将工作人员实现为单独的参与者,并使用单一无状态服务来侦听队列和调用参与者。优点 - 开箱即用的自动缩放,对于来自队列的每条消息,都将创建新的参与者。缺点 - 演员将是一次性的。

0 投票
1 回答
673 浏览

c# - 击中客户端连接端点时的 ERR_INVALID_HTTP_RESPONSE

我创建了一个带有无状态服务的服务结构服务应用程序。我已将其部署在 Azure 服务结构集群中。

ServiceManifest.xml 中的端点是

当我检查服务结构资源管理器时,它显示一切正常。但是当我从浏览器点击客户端连接端点cluster_name.southeastasia.cloudapp.azure.com:19000时,它返回ERR_INVALID_HTTP_RESPONSE.

当签入提琴手时,它显示HTTP/1.0 200 This buggy server did not return headers.

除了第 3 步和第 4 步外,我一直都在关注这篇文章。

通过浏览器点击时,如何在客户端连接端点上获得有效响应?


更新:

我已经在 localhost 和 Azure Service Fabric Cluster 上发布了https://github.com/Azure-Samples/service-fabric-dotnet-getting-started/tree/vs2015 。

localhost 服务结构集群上的端点:http://localhost:8081/

Azure 服务结构集群上的端点:http: //10.0.0.4 :8081/

在此处输入图像描述

我在 localhost 端点上得到了上面显示的屏幕,但ERR_CONNECTION_TIMED_OUT在另一个端点上。我缺少什么设置?

0 投票
1 回答
665 浏览

c# - 在 Service Fabric 上从一个 ASP.NET Core 网站公开两个端点

我在 Service Fabric 2.7 上使用 ASP.NET Core 1.1 网站,这是一个面向公众的网站,所有通信都通过 SSL(端口 443)完成。

但是,如果有人尝试错误地连接到端口 80 (http),我想将他们转发到相同的 URL,但切换到端口 443 (https)。

我实现这一点的方法是在同一个 ASP.NET Core 应用程序中使用两个端口侦听器,因为为端口重定向提供额外的无状态服务似乎很荒谬。

我的问题是:

  1. 从端口 80 转发到端口 443 有比这个更好的技巧吗?
  2. 我可以在同一个 ASP.NET Core 网站中拥有两个侦听器吗?如果是这样,你能指出我的相关资源吗?
0 投票
0 回答
58 浏览

.net - 使用不同的端点访问服务结构应用程序

我有一个集群,我想在其上部署 2 个版本的相同服务结构服务并实例化它们。例如 - 我有 1.0 版的 App1 和 2.0 版的 App1。这两个都分别用fabric:/Instance1 和fabric:/Instance2 实例化。

我在 servicemanifest.xml 中更改了两个应用程序实例的端点,如下所示。

端点 1:

端点 2:

请让我知道如何访问在具有不同端点的不同端口上运行的这两个实例?

0 投票
1 回答
78 浏览

c# - 在 WinForm 应用程序中使用 ServiceFabric 时出错

我有用 ASP.NET MVC 制作的微服务。我需要为测试人员提供一个 WinForm 应用程序,他们将使用该应用程序通过服务上传文件,但是,当我在我的 WinForm 应用程序中使用来自 Microsoft.ServiceFabric 程序集的类时,我得到以下异常:

无法加载文件或程序集“Microsoft.ServiceFabric.Services,Version=5.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。试图加载格式不正确的程序。

我确保在我的微服务中拥有用于与 ServiceFabric 通信的所有相同 Nuget 包,并且项目可以正确编译。有人知道可能是什么问题吗?

非常感谢,

克劳德

0 投票
0 回答
778 浏览

c# - Login.live.com 服务器未找到错误

我正在使用 Microsoft Graph API 对我的 Web 应用程序的用户进行身份验证。对于 SO,我已经在Registration Portal中注册了一个测试应用程序。此门户为我们提供应用程序 ID 和应用程序密码。我已经定义 了重定向 URL,它接受代码并返回访问令牌。

我的问题有点奇怪。我可以毫无问题地访问令牌,这意味着我已经进行了正确的设置。但是,经过几次调用(2),Graph API 没有返回任何内容,因为未找到登录 live dot com服务器。

我已经尝试完全清除 cookie、dns 缓存,但它没有工作,但是如果我重新启动笔记本电脑并拨打电话,那么它似乎开始工作了。几次通话后,仍然没有找到 Login.live.com 服务器。

这是快照在此处输入图像描述

请让我知道你的想法。谢谢

0 投票
1 回答
1601 浏览

.net - Service Fabric 包激活错误

收到以下错误

如果我在 linux 服务结构集群上尝试它,错误会改变一些。因此,由于 windows 没有 bash,因此认为 windows 集群在 entyPoint.sh 脚本上失败了。Linux 集群显然越过了这一点,并且在初始化代码中的某个地方失败了,但仍然找不到在哪里。我添加了

并从 linux 框中下载了所有日志,但没有从控制台中看到任何内容。

启动类看起来像

程序.cs

我无法找到有关错误的详细信息,也无法在服务结构环境中调试任何东西,因为它们不会运行。任何帮助表示赞赏!

我已经运行 PerfView 并找到了与包激活相关的事件,但没有提示实际问题是什么。即使没有人知道问题出在哪里,只要获得更多信息的技术帮助就会很棒!

另一件看起来很奇怪的事情是,即使我注释掉 Main() 方法中的所有代码,我仍然会得到完全相同的错误。几乎就像它甚至在框架 dll 或类似的东西上出现之前就失败了,但一切都是 .netcore2 并且我在带有服务结构的机器上安装了运行时

0 投票
2 回答
224 浏览

azure-service-fabric - 使用 Owin 将 Service Fabric 项目部署到 Azure Service Fabric 群集时出现问题

我正在使用 Owin 开发 Service Fabric 项目,但在将其部署到云中时遇到了麻烦。我搜索了其他有同样问题的人,但我只找到了一个答案,告诉集群中的错误告诉代码哪里出错了。我按照 Microsoft 的 Owin 教程介绍了如何编写失败的方法,但没有运气。我可以从 Visual Studio 直接在 Localhost 上运行该项目,但是当我将它部署到 Azure 中的 Service Fabric 群集时,问题就开始了。我有一个 5 节点集群正在运行,当我部署到它时,它会在 2 分钟后开始发出警告,并在 5 分钟后发出错误。应用程序的状态是“inbuild”。 警告图像和错误图像

我有两个服务,我的集群中的错误给出了这两种方法中的错误(每个服务中的相同方法(OpenAsync)):

来自集群的错误告诉错误在本节中:

另一种方法(来自其他服务):

来自集群的错误告诉错误在本节中:

我的创业课程:

我在哪里创建了一个新的 OwenCommunicationListener:

我非常希望能够将它部署到 Azure Service Fabric 集群而不会出现任何错误。祝您有美好的一天,感谢您的帮助。

0 投票
1 回答
1682 浏览

azure - 连接到 Service Fabric 应用程序终结点

我在 Azure 上设置了一个 Service Fabric 集群,并且有一个运行 2 个服务的应用程序。现在我希望能够连接到浏览器中的服务,就像我在 localhost 上运行它时一样。该应用程序使用 Owin 和 Swagger。这是在 localhost 上运行的样子:running on localhost。当我尝试从 Azure 连接到它时,出现超时错误。我在应用程序中使用端口 20002 和 20001,并且我在设置集群时打开了端口(端口 19000、19080、20001 和 20002 在我的集群中打开)。这是我在资源管理器中的服务:资源管理器中的服务。集群设置了证书安全性,并且我已将证书添加到浏览器中(我正在使用它连接到资源管理器)。我的 CreateServiceInstanceListeners 代码:

和我的 OpenAsync 代码:

和我的服务端点:

总结一下我的问题:如何使用 swagger 等方式在浏览器中访问我的 Service Fabric 应用程序服务?