我目前正在开发一种REST服务,允许控制和监控一些物理设备.
相应的REST API主要基于您可以在以下文章中找到的原则和想法:" 使用REST控制和监视设备 ".
受监视和受控设备可以生成客户端必须能够订阅的一些事件.我的想法是使用RESTful WebHooks实现该部分.
因此,每当发生事件时,我的服务都会向每个订阅者发出REST API回调以通知它.
我的问题,现在:
使用ServiceStack(版本3.9.71)实现此方案的正确方法是什么?
我的服务必须能够将订阅排队并将事件分派给订阅者.它还必须处理客户端关闭或无法访问的情况,并可能重试发送通知.
我是否必须从头开始实现所有内容(例如,使用ServiceStack托管的RedisMqServer)或者是否已经在我的方向上进一步发展?我在Google上搜索得不太成功.
我只想在给定的持续时间(即满足执行的最短日期/时间)之后和/或在处理消息时将消息的执行推迟到以后,以便将消息排队处理及时(例如未满足某些先决条件检查)。
例如,发生了一个事件,该事件定义了一个过程,该过程需要从初始事件开始不超过1小时运行。
是否有内置/建议的模型使用https://github.com/ServiceStack/ServiceStack/wiki/Messaging-and-Redis进行协调?