Rest ATOM用于“的消息传递服务”;“企业”; 我去做演讲,在他的演讲中,他说原子在很多情况下是JMS的好替代品。由于JMS是一种消息传递服务,我对此很好奇。你们使用ATOM作为消息服务吗?它可靠且可扩展吗

Rest ATOM用于“的消息传递服务”;“企业”; 我去做演讲,在他的演讲中,他说原子在很多情况下是JMS的好替代品。由于JMS是一种消息传递服务,我对此很好奇。你们使用ATOM作为消息服务吗?它可靠且可扩展吗,rest,jms,message-queue,atom-feed,Rest,Jms,Message Queue,Atom Feed,JMS最大的优点是它使用push方法(服务器通知新消息)而不是pull方法(客户端每X毫秒不断请求新消息)。我认为对于“Web2.0”应用程序,这种方法很酷,但对于“企业”应用程序,推送方法的可伸缩性要高得多。 你们怎么看?为什么你们认为推送比拉送更具可扩展性 其次,这是一个相当广泛的问题,如果轮询间隔没有意义,一些实时应用程序必须使用push(我需要亚秒的响应时间,不希望每100毫秒轮询一次)。但在大多数情况下,我总是发现pull更具可伸缩性,更易于实现。我们将Atom发布/联合格式用于“消息

JMS最大的优点是它使用push方法(服务器通知新消息)而不是pull方法(客户端每X毫秒不断请求新消息)。我认为对于“Web2.0”应用程序,这种方法很酷,但对于“企业”应用程序,推送方法的可伸缩性要高得多。
你们怎么看?

为什么你们认为推送比拉送更具可扩展性


其次,这是一个相当广泛的问题,如果轮询间隔没有意义,一些实时应用程序必须使用push(我需要亚秒的响应时间,不希望每100毫秒轮询一次)。但在大多数情况下,我总是发现pull更具可伸缩性,更易于实现。我们将Atom发布/联合格式用于“消息传递”类型的基础设施,它允许客户端跟踪他们可能错过的旧消息(使用JMS要困难得多)。将消息发布到Atom集合(提要),然后每当用户启动其客户端时,他们都可以轮询提要并查看新内容。也许他们只关心每小时、每一天都能看到更新,这在客户端要容易得多,而不需要发布消息的服务器和使用消息的客户端之间进行任何交互

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

你在拿苹果和桔子做比较

JMS是Java程序使用可靠的点到点和发布子消息代理的标准API

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


如果需要,可以使用JMS发送包含Atom格式数据的消息。然而,这并没有多大意义,因为Atom提要的内容包含信息,让客户端确定哪些提要项是新的,哪些是上次轮询时已经下载的。酒吧经纪人帮你做的,因此,发布订阅通知可以只包含订阅者感兴趣的新信息。

我认为它的可扩展性要高得多,因为我认为最好有一台服务器在新消息到达时通知1000名客户,而不是1000名客户在新消息到达时每1秒向服务器询问一次。我可以理解为什么你会这样认为,我过去是这样做的,但我发现这不是真的。这两种解决方案都有其优缺点,但WWW完全是关于投票的,而且它的规模似乎相当大。正如我上面所说的,发布您的消息并让客户在空闲时使用它们是一种更加解耦的解决方案,而且编写起来更简单。您的服务器将非常轻量级,因此比“推送”服务器性能更好。很抱歉,但您显然不明白这是怎么回事。您可以将ATOM用于消息传递服务。不,您将HTTP+ATOM用于消息传递。HTTP是传输,ATOM只是用于表示事件的格式。