android – 移动消费者的消息传递方法

我的系统中有数以千计的移动设备.它们连接到我的中央服务器.我需要有一种机制来根据特定设备遵循的某些事件更新它们(按主题通知).假设我在服务器上聊天,移动用户可以关注任何聊天,并希望在聊天中有效地接收新消息的通知.主要的移动平台是 Android.

我正在考虑使用主题(每个聊天)使用消息:Kafka或RabbitMQ.
请提供有利于移动消费者的建议.

最佳答案 Kafka和RabbitMQ是完全不同的方法. Kafka是一个日志存储系统(即一个有序的消息序列),RabbitMQ只是排队和路由.

我正在设计一个事件采购系统.我用:

>卡夫卡在后端
> RabbitMQ(或其他平台,如XMPP)连接客户端

RabbitMQ可以很好地扩展到数千个队列,并允许客户端定义RPC和简单安全性所需的私有队列(未命名,临时,单个使用者,排除).客户端通常需要在集群上执行特定功能,或者只读取一组过滤的事件(并非所有事件),因为它们的带宽有限.理论上,可以使用kafka,但现在有几个挑战(即主题限制,独占队列,自动删除等).

Kafka(samza)是一个非常好的事件采购工具(即浏览消息历史)和实时流处理(自动重放,重启过程等).扩展不是必需的,因为它是集成,高度可靠性和恢复.

点赞