使用MQTT或Redis的Websocket?

时间:2018-11-01 05:54:32

标签: python websocket redis mqtt

我需要在Web应用程序中为实时通知实现MQTT,这样我就不需要在每次生成新事件时都刷新页面。请建议我将MQTT或Redis与网络套接字一起使用。我使用的技术是Python和AngulaJS。请提出建议。谢谢。

2 个答案:

答案 0 :(得分:0)

我在问自己同样的问题。我的实际结论是:

Redis没有websocket界面,也不是为直接Internet服务而设计的。例如,您需要在python中创建网关,以将websocket转换为redis。

MQTT是一个协议,取决于实现,并且有多个。 MQTT服务器实现Mosquitto具有集成的websocket接口,可以直接用于Internet。

Redis比Mosquitto具有更多功能,它可以处理更多功能,例如队列。

如果您只需要简单的pubsub,则Mosquitto入门会更简单。

请注意,我对mosquitto的经验很少,也没有关于redis的经验。

答案 1 :(得分:0)

Redismqtt(实际上是[mqtt][1]的实现,例如[mosquitto][2])都可以用于网络套接字解决方案:

    @sophana所述,
  • redis不能从Web本地访问,并且您将需要备份来公开对其的访问(在nodejs世界中,您可以使用,例如{{1 }})
  • [sailjs][4]可以与mosquitto设置为qos0设置为retained messagefalse设置为clean session一起使用

但是,对于简单的用例,我建议在false上推荐redis,因为它更易于使用。