我正在开发一个需要响应来自第三方 WebHook 的事件的应用程序。我选择 Azure Event Grid 作为我选择的事件代理,Angular 作为前端,Asp.Net Core 作为后端。
在我当前的解决方案中,我使用 HTTP 触发的 Azure 函数从 WebHook 发布到 Azure 事件网格。此函数将第三方事件格式化为正确的 Azure 事件网格格式(以相关事件用户为主题,事件类型为 WebHook 事件类型)。目前,事件网格事件已使用 WebHook Azure 事件网格订阅推送到我的 Asp.Net 后端。
我的问题是,某些事件仅涉及前端(例如提醒/灯光通知),因此我想直接将事件从事件网格发布到前端,而不使用 WebSocket 到后端的端点。
我目前正在使用 SignalR 在 Angular 和 Asp.Net Core 之间创建 WebSocket 连接,但我不想通过发送仅重定向到 Angular 的事件来使后端过载。
有没有办法使用 WebSocket 连接直接订阅 Azure 事件网格?就最小推送/轮询而言,最佳解决方案是什么?或者我应该切换到另一个带有 JavaScript 库的事件代理(如 RabbitMQ)?
asp.net publish-subscribe messagebroker angular azure-eventgrid