问题标签 [azureservicebus]

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 投票
2 回答
929 浏览

azure - 使用 Azure 服务总线通过端口 80 发送消息

似乎我的问题的解决方案应该比现在更容易,这让我觉得我错过了显而易见的事情。我正在尝试测试并确保远程客户端计算机可以发送/接收来自 Azure 服务总线队列的消息。

我正在使用 Microsoft 在https://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-amqp/提供的示例应用程序

只要所有端口都打开,示例应用程序就可以正常工作。但是,当只有端口 80/443 可用时,我需要该解决方案才能工作。如果我将 Windows 防火墙配置为仅允许 80/443 上的入站/出站流量,则它不起作用。我收到错误“试图以访问权限禁止的方式访问套接字”。

示例应用程序中的违规行是:

我查看了非常多的网站,我发现的一个建议是将连接模式设置为 Http,如下所示:

那也行不通。

我没有尝试在远程客户端或 Azure 托管角色上设置自定义服务。我只需要它们都能够通过 Azure 的服务总线队列和主题发送/接收消息。

谁能指出我的缺点?

0 投票
1 回答
486 浏览

azure - 保护从多个远程站点访问 Azure 服务队列的建议

我正在使用 Azure 服务总线队列来存储消息并将消息转发到客户端应用程序的远程安装。

例如,我的方法是为每个远程站点设置一个队列,并为应用程序的每个实例配置它自己的队列名称;

我正在寻求有关如何保护客户端应用程序中的队列和凭据的建议。据我了解,每个命名空间都有一组凭据,因此客户端应用程序的每个实例都将具有相同的队列连接字符串。此外,似乎使用解密的连接字符串,调用有权创建/删除队列,而不仅仅是出列消息 - 我可以防止这种情况发生吗?

0 投票
2 回答
334 浏览

azure - StreamInsight Austin 示例服务总线 404

我一直在尝试基于 Austin Sample 创建一个示例应用程序。首先,我有一个带有示例的 404,我通过调整 App.Config 中的 connectionString 来修复它(我忘了那个,我的错)。现在我创建了第二个接收器,它应该将消息发送到服务总线队列而不是 Azure 表。启动 SampleApplication 和 EventSourceSimulator 时,前两条消息似乎正确传递,但第三条消息显示 404 错误。以下是错误的屏幕截图和我的接收器的类。如果您需要更多信息来帮助我,请告诉我。提前致谢,

奥斯汀 404 错误

更新:我在管理门户的服务总线队列中看不到任何东西,所以我想那里什么也没有。

0 投票
1 回答
983 浏览

c# - Azure 服务总线:代理主题订阅侦听器

背景

有一个 RESTful API 提供了一些操作。此 RESTful API 由第三方使用,这些第三方必须在平台中进行身份验证和授权才能访问 API 的操作。

第三方需要可靠的数据消费,API必须提供基于发布者/消费者模式的解决方案来消费部分数据。

由于所谓的API 不会重新发明轮子,它即将使用Windows Azure Service Bus

问题

RESTful API 应该抽象出实际的服务总线服务。另一方面,Service Bus 是在自己的平台中提供可靠消息传递的解决方案

实际上,Service Bus 不是一个独立的服务,而是一些工作流的一部分。第三方不应拥有 Windows Azure 凭据

第三方应使用特定于 API 的凭据连接到 Windows Azure 服务总线,该凭据可以访问服务总线的主题(即消息队列)。

可能的解决方案

一个。授权直接访问 Windows Azure 服务总线

这似乎是最简单的解决方案。让我们看看流程:

  1. 第三方向 RESTful API 发送请求,以获取 Windows Azure 服务总线连接字符串 - 凭据 -
  2. 一旦有了连接字符串,第三方就会连接到 Windows 服务总线并开始从某个主题订阅接收消息。注意:连接字符串在服务器端加密,只能由接受的客户端解密。

优点

  • 简单的。API 授权第三方使用 Windows Azure 服务总线,它没有其他责任。
  • 自己的 API 不管理主题订阅者的高负载:这是由 Windows Azure 平台处理的。

缺点

  • 第三方与 Windows Azure 密切相关。
  • 第三方可以轻松绕过 RESTful API 一段时间。

湾。代理访问 Windows Azure 服务总线

这有可能吗?整个流程将是:

  1. 第三方请求一个类似于 RESTful 的 TCP API,以便订阅某些 Windows Azure 服务总线主题。
  2. TCP API 建立连接并创建代理,以便将 TCP API 连接到服务总线 I/O 镜像到 TCP API 到第三方。
  3. 现在第三方连接到代理并发送和接收消息

优点

  • 第三方通过代理连接,这意味着他们不拥有任何 Windows Azure 凭据,也无法绕过 TCP 或 RESTful API。
  • 消息传递不再完全依赖于 Windows Azure。

缺点

  • 如果 Windows Azure 服务总线关闭连接会发生什么?
  • 如果平台代理出现故障会发生什么?

C。Windows Azure 服务总线服务器包装器

这是定义和流程:

  1. RESTful API 服务器具有 Windows Azure 服务总线订阅连接池
  2. 第三方订阅了 API 服务器的 TCP 套接字或 WebSocket
  3. 每当 Windows Azure 服务总线有消息时,它都会被路由到第三方连接池,第三方会收到消息
  4. 第三方使用 RESTful API 发送消息

优点

  • 第三方完全不知道服务总线技术。

缺点

  • b 相同。方法。

问题

  • b。方法可能吗?

  • 你对c有什么建议。Windows Azure 服务总线服务器包装器。您是否发现在正常运行时间和 Windows Azure 服务总线与 API 和 API 与第三方同步方面的可靠性越低,这是一场可以避免的战争?

  • 我错了,这些方法还有其他选择吗?

0 投票
1 回答
2923 浏览

wcf - WCF 服务总线服务无法启动配置错误“集合已包含相同类型的项目”

我通过服务总线公开我的 windows 服务,下面是我的配置文件。我收到奇怪的错误(它突然开始出现,尽管代码/配置没有变化。它之前工作正常。

One23InsightService 无法启动。异常消息:-无法将值添加到集合中,因为集合已包含相同类型的项目:“Microsoft.ServiceBus.TransportClientEndpointBehavior”。此集合仅支持每种类型的一个实例。参数名称:item 我有两个端点,接口不同,但行为配置相同。

0 投票
1 回答
275 浏览

c# - Azure 服务总线:忽略我发送的消息

我在通过 Azure 服务总线通信的各种机器上安装了一系列软件代理。每个代理可能既是发布者又是订阅者。

Azure 服务总线中是否有任何内置机制让发件人不接收从总线返回的消息(例如某种“回声消除”)?

示例:如果 A、B 和 C 是代理,我想要实现的是 A 发送的消息传递给 B 和 C,而不回环到 A。

我想我可以使用过滤器,但我想知道服务中是否有更简单的内置功能。

0 投票
1 回答
293 浏览

windows-phone-7 - 在 Windows Phone 8 中使用 Azure 服务总线 (pub/sub)

我想在 Windows Phone 8 上使用基于云的 pub/sub 实现。我正在尝试将两部以上的手机连接在一起(想想基于朋友风格的单词),我知道 Azure 可以做到这一点,但并非所有的 DLL 都是可在 Windows 手机 (7/8) 上使用。有没有人有很好的参考资料来在 Windows 手机上发布 pub/sub?

0 投票
1 回答
3751 浏览

azure - 使用 Windows Azure 服务总线进行消息路由

我花了几个小时才了解 Azure 服务总线架构。我特别想知道这种排队技术是否可以用来支持消息路由——类似于 RabbitMQ 的路由能力。 http://www.rabbitmq.com/tutorials/tutorial-four-python.html

我们将改为使用直接交换。直接交换背后的路由算法很简单——消息进入绑定键与消息的路由键完全匹配的队列。

在这个设置中,我们可以看到绑定了两个队列的直接交换 X。第一个队列用橙色绑定键绑定,第二个队列有两个绑定,一个用黑色绑定键,另一个用绿色绑定。

在这样的设置中,使用路由键橙色发布到交换的消息将被路由到队列 Q1。路由键为黑色或绿色的消息将发送到 Q2。所有其他消息将被丢弃。

寻找对服务总线架构有深刻理解的人来推荐实现这种队列的最佳向量。

0 投票
1 回答
261 浏览

azure - Azure 服务总线中的订阅能否获取以前代理的消息?

我有这个已经有消息的服务总线。目前我正在使用 SqlFilter 创建订阅 - 假设过滤器是 (myProperty < x)。

问题是在消息已经在队列中之前我不知道 x 是什么。当我有一个具体的 x 值并进行新订阅(myProperty < 123)时,我不能使用它来接收已经在队列中的消息。

是否有某种方法可以标记订阅以获取创建订阅之前队列中的消息?我怀疑我需要换一张桌子而不是公共汽车?

0 投票
1 回答
56 浏览

azure - 确定特定消息是否仍在 Azure 服务总线中排队的模式

我有一个将消息 x 代理到 Azure 服务总线的推送器。这是客户对某个订单的请求。

消费者出现并想知道“消息 x 的状态是什么”?我想尽可能多地了解消息 x,但至少我需要回答“是/否”它还在队列中吗?Azure 服务总线中是否有推荐的模式?