ATOM用于“企业”的消息服务

时间:2009-05-26 17:12:15

标签: rest jms message-queue atom-feed

我参加了Jim Webber演讲,在他的演讲中,他说在很多情况下ATOM是JMS的一个很好的替代品。由于JMS是一种消息服务,我很好奇。你们是否使用ATOM作为消息服务?它可靠且可扩展吗?

JMS的最大优点是它使用push方法(服务器通知新消息)而不是pull方法(客户端每隔X毫秒就要求新消息)。我认为对于“Web 2.0”应用程序,这种方法很酷,但对于“企业”应用程序,推送方法更具可扩展性。 你们觉得怎么样?

3 个答案:

答案 0 :(得分:3)

为什么你认为推送“可扩展性更强”然后拉动初学者呢?

其次,这是一个非常广泛的问题,如果轮询间隔没有意义,一些实时应用程序必须使用push(我需要亚秒响应时间并且不想每100毫秒轮询一次)。但在大多数情况下,我总是发现拉动更具可扩展性,更容易实现。我们将Atom Pub / Syndication格式用于“消息传递”类型的基础架构 - 允许客户端赶上他们可能错过的旧消息(更难以使用JMS)。将消息发布到Atom集合(订阅源),然后每当用户启动其客户端时,他们都可以轮询订阅源并查看新内容。也许他们只关心每小时,每天都看到更新 - 在客户端更容易做 - 在发布消息的服务器和消费它们的客户端之间没有任何交互。

答案 1 :(得分:2)

您正在将苹果与橙子进行比较。

JMS是Java程序的标准API,可以使用可靠的点对点和pub-sub消息代理。

Atom是一种基于XML的数据格式,用于表示新闻源。

如果您愿意,可以使用JMS发送包含Atom格式数据的消息。但是,没有多大意义,因为Atom提要的内容包含让客户确定哪些提要项是新的以及上次轮询时已经下载的提要项的信息。 pub-sub代理为您执行此操作,因此pub-sub通知只能包含订阅者感兴趣的新信息。

答案 2 :(得分:1)

Push或Pull是否适合给定问题在很大程度上取决于延迟要求,传输的数据量,节点可用性以及问题的其他特定属性。不要让任何人告诉你任何一个总是比另一个好。

相关问题