我希望能够安排从服务器到客户端的轻量级消息传递。这对我来说是一个新领域,所以我很感激一些关于可用方法的建议。
客户端使用 node.js 在 Raspberry Pi 上运行(因为我使用节点库来控制一块附加硬件)。最终会有多个客户喜欢它。
服务器可以是任何东西,尽管我最熟悉 Python、django 和 node。
我希望能够从浏览器访问服务器并使其安排将来向客户端发送消息,有效地推送带有少量数据的通知。
我正在研究发布订阅和消息传递系统来做到这一点;我开始编写一个在两端都使用节点和套接字的系统,但我想要的方法是更多的即发即忘的偶尔消息,而不是持续的实时数据交换。我也不是 node-cron 样式调度的忠实拥护者,我希望能够检索和更改计划的事件,并且在 cron 系统之上将其分层感觉有些笨拙。
我当前的解决方案在服务器上使用 python(所以我可以编写一个 django Web 界面)和 celery 和 rabbitmq,每个客户端使用一个命名队列。客户端使用 node-amqp 订阅该特定队列,然后我们就走了。这也允许我创建多个客户可能感兴趣的队列,这是一个很好的奖励。
这个答案让我觉得我在做正确的事情——但由于我对这些东西不熟悉,感觉我可能会错过一些东西。在服务器-客户端消息传递的世界中,我应该考虑其他替代方案吗?