Azure Web PubSub 和事件网格/事件中心有什么区别?

问题描述 投票:0回答:2

在我看来,Azure Web PubSub 是使用 Web 套接字而不是 HTTP 的事件网格和事件中心的组合。但是,我不是 100% 确定,也找不到任何对这 3 种服务进行直接比较的文章。

c# azure azure-eventhub azure-eventgrid azure-web-pubsub
2个回答
5
投票

为了回答您的问题,让我逐一解释所有这三项服务。

Azure 事件网格

Azure 事件网格是一个完整的事件路由服务,主动运行在 Azure Service Fabric 之上。它将来自各种服务(例如Azure Storage Blobs)的事件发送到不同的处理程序(例如Azure Functions)。它是事件驱动的发布-订阅模型(反应式编程)。

Azure 事件网格可以连接到您创建的任何应用程序,并且可以提取应用程序生成的事件并将其发布到不同的其他目的地。

Azure 事件中心

Azure 事件中心是一项数据引入服务,它可以传输来自任何来源的大量消息,以便对业务挑战提供即时响应。它每秒从任何来源流式传输数百万个事件,以构建动态数据管道并立即响应业务挑战。将其视为多源大数据流管道(遥测数据)。

它们之间的区别在于,事件中心仅接受用于摄取数据的端点,并且不提供将数据发送回发布者的机制。另一方面,事件网格发送 HTTP 请求来通知发布者中发生的事件

Azure Web PubSub

PubSub 是发布订阅的缩写形式。如果您以前曾经使用过 Azure SignalR 或 WebSockets 在发布者和订阅者之间发送内容,那么 Web PubSub 也可以这样做。因此,Azure Web PubSub 是一项托管服务,用于处理与应用程序的实时通信

当您使用 WebSockets 时,客户端和应用程序服务器之间有这些长时间运行的连接,但在处理长时间运行的请求时扩展它们会变得很棘手。这个问题可以通过 Web PubSub 服务解决,该服务位于客户端和应用程序服务器之间。现在,您的客户端可以与此服务器通信,并且您可以在 Azure Web PubSub 服务和应用程序服务器之间执行 http 操作。 因此您的应用程序服务器仍然仅使用 http,但所有硬 WebSocket 逻辑都由该服务为您处理

Azure Web PubSub 服务与 SignalR 构建在相同的核心基础平台上,但两者之间的主要区别是 Azure Web PubSub 纯粹是无服务器的,在 SingnalR 中您需要使用 SignalR 客户端,但使用 Web PubSub 您可以使用任何客户端任何语言

最后,我建议您阅读这些在 Azure 消息服务之间进行选择Azure Web PubSub 文档以获取更多信息。


0
投票

我会利用这个线程。我有一个场景,我有一个合作伙伴会通过 WhatsApp 向我发送聊天消息。该合作伙伴在调用我的环境发送消息时有 10 秒超时。我需要接收此消息,然后调用可能需要 10 秒以上才能运行的内部 API。因此,我需要接收消息、转发确认,然后运行我的 API。我认为 azure pub-sub 可以很好地帮助我解决这个问题。我还需要按顺序处理消息,并且不能丢失消息。您认为 azure pub-sub 适合这种集成的解决方案吗?

© www.soinside.com 2019 - 2024. All rights reserved.