问题标签 [azure-servicebusrelay]

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 回答
1413 浏览

c# - Windows Azure 服务总线中的默认颁发者和默认密钥有什么用?是否需要保护密钥?

我们创建了一个下载客户端服务模型应用程序,其中 WCF 服务托管在我们的一台服务器上,客户端应用程序分布在合作伙伴之间。为合作伙伴提供了唯一的 pin,他们可以使用该 pin 向 WCF 服务进行身份验证,并可以向 WCF 服务发出下载请求。

客户端通过 Windows Azure 服务总线连接到 WCF 服务,我们在其中创建了一个命名空间,客户端应用程序可以使用该命名空间连接到服务。每个命名空间都有一个Default IssuerDefault Key。当连接到服务总线时,我们在代码中嵌入了这个 Default 键。有人告诉我需要保护密钥,并且您需要对应用程序进行签名以保护嵌入式密钥。真的吗?

我们真的需要保护这个密钥吗?如果是,那怎么办?有没有一种方法可以简单地在服务总线中提供身份验证,从他们的引脚识别客户端,并且只允许一组人访问服务总线命名空间?或者我在这些问题上无用地担心?:)

我们正在使用服务总线中继。我一直在阅读有关 SAS 和 ACS 的信息,根据文档似乎继电器不支持 SAS。以下是链接: “将在不久的将来添加对服务总线继电器的支持。” http://msdn.microsoft.com/en-us/library/windowsazure/dn170477.aspx

我无法理解如何使用 ACS 对客户端进行身份验证。Windows Azure 文档中提供的信息对我来说都是保镖,无论我多么努力,我都无法将它们与任何东西联系起来。

如果有人对我的担忧有任何信息,请帮助我提供适当的链接和指导。

谢谢!

编辑!!! 我一直在对此进行搜索,以下链接提供了一种创建未经身份验证的客户端的方法:http: //msdn.microsoft.com/en-us/library/microsoft.servicebus.nettcprelaybinding.aspx

通过在我的客户端 App.Config 中使用以下标签

我已经尝试过了,但收到以下错误:“通用:授权失败。确保您已指定正确的 SharedSecret、SimpleWebToken、SharedAccessSignature 或 Saml 传输客户端凭据。MissingToken:需要中继安全令牌。”

我正在寻找更多关于这个错误的信息。但很少有问题出现。如果我们让 azure 服务总线无需身份验证即可访问,那么有人会为了自己的利益而滥用服务总线吗?

0 投票
2 回答
485 浏览

azure - 在 IIS 中使用 NetTcpRelayBinding 托管 WCF 服务:调用时主机关闭

我在 IIS 中使用 NetTcpRelayBinding 托管我的 WCF 服务时遇到问题。当我通过浏览 WSDL 激活服务时,它会向 Azure 服务总线发布一个中继,但是一旦我尝试调用它,服务主机就会关闭并且中继消失。我可以看到服务端的唯一例外是 SocketException:远程服务器关闭连接。如果我在控制台主机中托管相同的服务,它工作正常。

有任何想法吗?

0 投票
1 回答
834 浏览

wcf - 中继绑定不适用于 Window Server Service Bus 1.1

我已经为具有默认命名空间的 Windows Server 1.1(不是 Azure 服务总线)安装了服务总线。我已经从 http://code.msdn.microsoft.com/windowsazure/Relayed-Messaging-Bindings-ca039161下载了示例, 并更改了以下代码以生成令牌。

但它抛出以下错误“无法通过 TCP (9351, 9352) 或 HTTP (80, 443) 到达 servicebusdefaultnamespace.servicebus.windows.net

我也尝试过使用 BasicHTTPRelayBinding 的相同示例,但这不起作用。

我是否需要为中继绑定做一些其他配置请建议!

提前致谢。

0 投票
1 回答
77 浏览

windows - 本地服务器上需要 Azure SDK?

我正在考虑通过 Azure ServiceBus Relay 公开 WCF 服务。该服务在本地 IIS (Windows Server 2008 R2) 上运行。

在我找到的示例和文档中,它说服务器上需要 Azure SDK。那是我想的中继绑定。

但真的需要所有的 SDK 吗?当我安装它(Windows Azure SDK for .NET(VS 2013)-2.2)时,它会安装 Visual Studio Express 等。是否没有办法在服务器上安装对 ServiceBus Relay 的支持,而没有获得这些“额外”组件,我真的不需要在生产服务器上?

0 投票
1 回答
411 浏览

c# - 寻找不使用 WCF 的 Azure 服务总线中继示例

我正在尝试了解 Azure Web Service Relay,但我正在寻找一个不使用 WCF 的 .NET (C#) 示例——无论是在发送方还是接收方。有人对 Azure 菜鸟有什么好的建议吗?

0 投票
2 回答
508 浏览

node.js - Azure 服务总线中继和 node.js

一段时间以来,我们一直在编写服务以通过 Azure 服务总线中继访问我们的本地数据库。这意味着我们必须将它们部署为 WCF 服务。我们的网站开发正在转向 node.js,我也想开始在 node 上部署我们的 API 服务。然而,虽然 Azure NPM 包对 Azure 服务总线上的队列/主题有很好的支持,但我找不到任何关于中继功能的提及。我在 github 上查看了 Azure SDK 的代码,但同样,relay 似乎明显不存在。

是否可以将 Azure 服务总线中继与 node.js 后端一起使用?

0 投票
2 回答
461 浏览

c# - 如何将 Azure 服务总线与 Windows 应用商店应用集成

我正在开发一个连接到 Azure 服务总线主题的 Windows Store 应用程序。我想在我的应用程序中使用服务总线主题。这可能吗?我不能使用此处讨论的 NamespaceManager:http: //www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-topics/,因为 Windows 应用商店不支持它。这个想法是订阅。

我的问题很简单,这可能吗?我应该选择什么方法?

0 投票
1 回答
998 浏览

azure - Azure 服务总线中继指南

我们正在构建一个将在 Azure 中托管的 Web 和移动应用程序。我们需要此应用程序来检索和更新我们的本地数据库中的数据,并且我们的防火墙限制会阻止创建入站防火墙规则。

我需要将架构传达给其​​他技术部门。

  1. 我下载了 ServicveBusRelay 培训套件演示 ( https://github.com/WindowsAzure-TrainingKit/Demo-ServiceBusRelay ),它可以工作,但是它创建的“sb://name.servicebus.windows.net/Customer”中继在以下情况下被删除我关闭了控制台应用程序,这正常吗?我也看不到它在服务总线资源管理器中列出,但我可以在门户中看到它?

  2. 中继不使用代理消息传递(队列、主题、订阅)?

  3. 什么是最安全的身份验证方法(对称密钥、X.509 证书、密码)?

  4. 不同绑定(NetTCPRelayBinding、BasicHTTPRelayBinding 等)的优缺点是什么,例如安全性和性能?

  5. 出站连接如何保持活动状态?

0 投票
1 回答
879 浏览

wcf - 连接到 Azure 服务总线中继的空闲 ServiceHost 上的高 CPU

我的公司正在使用 Azure 服务总线中继将敏感数据的摘要汇总到 Azure 托管的应用程序中。我们注意到在预生产服务器上,在处理前几个请求后,托管 ServiceHost 实例的进程的 CPU 利用率跃升至 70-90% 并保持在那里。ServiceHost 通常在 Windows 服务中自托管,但我们也有一个 WPF 应用程序,我们在其下运行它以用于各种设置和测试场景,并且我们可以在两者上重现此行为。我们无法在我们的开发环境中重现此行为。

我已经查看了代码并将其与 MSDN 上的示例进行了比较,在我看来它们看起来相当。这是精简版:

我们从未看到OnFaulted事件处理程序被触发,并且在 CPU 跳转后继续处理请求。主机应用程序的 WPF 版本有一个按钮,可以通过调用断开与服务总线的连接this.host.Close(),一旦断开连接,CPU 立即返回空闲状态。

我已经做了一个跟踪侦听器,但唯一的消息与启动SystemConnectivity.Mode时的自动检测有关。ServiceHost堆栈中的故障位置是对Microsoft.ServiceBus.NetworkDetector.DetectInternalConnectivityModeForAutoDetect(Uri uri). 错误本身被 Microsoft.ServicBus 层捕获,并且永远不会冒泡到我公司的代码中。跟踪捕获的特定异常消息是

无法连接到 net.tcp://[name_redacted].servicebus.windows.net:9350/。连接尝试持续了 00:00:01.1856021 的时间跨度。TCP 错误代码 10061:无法建立连接,因为目标机器主动拒绝它 [ip_redacted]:9350。

这是我用于跟踪的设置:

接下来,我尝试对哪些线程正在消耗所有 CPU 进行一些分析。我从进程的内存转储开始,但认为单个快照无法为我提供有关随着时间推移发生的事情的足够信息,因此我找到了Sam Saffron 的关于生产 .Net 应用程序的 CPU 分析的博客文章。我们获取了最新版本的 cpu-analyzer 源代码并在相关服务器上运行它。所有最昂贵的堆栈System.Threading._IOCompletionCallback.PerformIOCompletionCallback在底部都有一个签名。我的理解是在捕获过程中没有服务总线调用,所以我不确定这个线程会做什么。

我们接下来的步骤是在服务器上运行 perfmon 捕获并查看结果,看看是否有任何明显的问题出现在我们面前。我没有直接访问服务器的权限,因此需要与 SysAdmin 安排时间来进行动手分析。

有没有人知道什么可能导致这个隐藏的 CPU 峰值?在 Azure 服务总线中继或 WCF 中是否有任何已知的行为?任何建议将不胜感激。

0 投票
0 回答
515 浏览

c# - 服务总线 netTcpRelayBinding 比常规 netTcpBinding 快吗?

我注意到一个奇怪的情况。我正在为有关服务总线中继组件的课程写一篇论文。我决定测试它对性能有什么影响(有一个“client <--> sb relay <--> service”而不是“client <--> service”连接,所以一定会有延迟)。令人惊讶的是,使用大输入数据(每个请求大约 1.5 MB 的数据作为输入,服务返回单个整数作为输出)的测试证明使用 SB Relay 的应用程序速度提高了 4 倍(500 毫秒对 2000 毫秒)。老实说,我不知道这些结果是从哪里来的。我在另一台机器上测试了客户端应用程序(服务仍然托管在 Azure VM 上),但结果相同。我测试了请求是否通过(如果有任何“类似缓存”的机制,但一切似乎都很好。

谢谢你的帮助