【发布时间】:2012-09-22 03:30:36
【问题描述】:
我目前正在设计一个移动应用程序,该应用程序可以根据用户位置向时间轴发送和读取消息。实际开发版本是使用 ActiveMQ 发送和消费消息,但还没有完成,所以我更愿意在继续开发之前定义架构应该如何避免将来出现问题。我不确定这是不是正确的方法,但这是我的想法:
- 每个用户都是向其队列发送消息的生产者。队列名称可以是用户的唯一 ID。
- 如果距离足够近,用户可以订阅其他用户队列。这涉及到一组用户队列的主题。该队列应该是动态的,通过检索固定半径内的用户生成,该半径是圆的中心,即消费者的位置。每个用户都有自己的 Topic 或 queue,就像这个(与 Twitter 的时间线非常相似的概念)。这意味着每个用户队列将有多个消费者。
在客户端,我一直在使用 Objective-C stomp 客户端作为与队列的连接协议。
我的问题是,这是解决问题的好方法吗?我不确定使用 ActiveMQ 和 Topics 的用户订阅近用户是可行的架构。您对这个时间线订阅问题有什么建议吗?另一方面,我很清楚每个用户都需要成为自己队列的生产者,但也许我也错了。
编辑
任何包含有关该主题的更多信息的参考、链接、书籍等都将受到高度赞赏。
【问题讨论】:
标签: ios database-design architecture activemq message-queue