Java服务器到服务器接口

Java服务器到服务器接口,java,push,server-communication,Java,Push,Server Communication,我必须为服务器到服务器的通信设计一个(java)接口,但我在这个领域没有这样的经验 我的服务器从不同的来源获取信息。其他服务器应能够连接到服务器,获取当前信息,并通过推送通知接收更改。接口不应依赖于其他服务器的某些编程语言或操作系统。 我的第一个想法是使用套接字并保持套接字打开以传输更改。 有更好的方法吗?我想在JavaEE环境中工作最简单的方法就是使用web服务。但如果情况并非如此,并且/或者您需要推送,我建议您使用一些库。例如,它使用非阻塞IO套接字,可以异步发送和接收任何字符串消息。从那时

我必须为服务器到服务器的通信设计一个(java)接口,但我在这个领域没有这样的经验

我的服务器从不同的来源获取信息。其他服务器应能够连接到服务器,获取当前信息,并通过推送通知接收更改。接口不应依赖于其他服务器的某些编程语言或操作系统。 我的第一个想法是使用套接字并保持套接字打开以传输更改。
有更好的方法吗?

我想在JavaEE环境中工作最简单的方法就是使用web服务。但如果情况并非如此,并且/或者您需要推送,我建议您使用一些库。例如,它使用非阻塞IO套接字,可以异步发送和接收任何字符串消息。从那时起,您可以使用JAXB绑定器发送XML消息或任何其他格式。

我想在JavaEE环境中工作最简单的方法是使用web服务。但如果情况并非如此,并且/或者您需要推送,我建议您使用一些库。例如,它使用非阻塞IO套接字,可以异步发送和接收任何字符串消息。从那时起,您可以使用JAXB绑定器发送XML消息或任何其他格式。

我想在JavaEE环境中工作最简单的方法是使用web服务。但如果情况并非如此,并且/或者您需要推送,我建议您使用一些库。例如,它使用非阻塞IO套接字,可以异步发送和接收任何字符串消息。从那时起,您可以使用JAXB绑定器发送XML消息或任何其他格式。

我想在JavaEE环境中工作最简单的方法是使用web服务。但如果情况并非如此,并且/或者您需要推送,我建议您使用一些库。例如,它使用非阻塞IO套接字,可以异步发送和接收任何字符串消息。从那时起,您可以使用JAXB绑定器来发送XML消息或任何其他格式。

由于您需要能够将数据推送到客户端,虽然套接字显然可以做到这一点,但它们确实会带来其他复杂性,因此,依我看,最简单的解决方案是使用消息队列

要使用消息队列,客户端将向服务器正在侦听的已知队列发布消息。此消息应包含一个
replyTo
目的地(通常是客户端拥有的临时队列)。收到消息后,服务器应注册
replyTo
目的地,并向该
replyTo
目的地发送任何通知


我通常发现对所有数据使用通知机制(包括初始加载和更新)更容易,因为它可以防止客户端必须支持两种机制来获取数据。这很容易做到,因为您的通知消息需要指示正在发生的事件类型(例如,添加、更新、删除),您只需要在此列表中引入一个初始化类型。

由于您需要能够将数据推送到客户端,而使用套接字显然可以做到这一点,它们确实引入了其他复杂性,因此,imho,最简单的解决方案是使用消息队列

要使用消息队列,客户端将向服务器正在侦听的已知队列发布消息。此消息应包含一个
replyTo
目的地(通常是客户端拥有的临时队列)。收到消息后,服务器应注册
replyTo
目的地,并向该
replyTo
目的地发送任何通知


我通常发现对所有数据使用通知机制(包括初始加载和更新)更容易,因为它可以防止客户端必须支持两种机制来获取数据。这很容易做到,因为您的通知消息需要指示正在发生的事件类型(例如,添加、更新、删除),您只需要在此列表中引入一个初始化类型。

由于您需要能够将数据推送到客户端,而使用套接字显然可以做到这一点,它们确实引入了其他复杂性,因此,imho,最简单的解决方案是使用消息队列

要使用消息队列,客户端将向服务器正在侦听的已知队列发布消息。此消息应包含一个
replyTo
目的地(通常是客户端拥有的临时队列)。收到消息后,服务器应注册
replyTo
目的地,并向该
replyTo
目的地发送任何通知


我通常发现对所有数据使用通知机制(包括初始加载和更新)更容易,因为它可以防止客户端必须支持两种机制来获取数据。这很容易做到,因为您的通知消息需要指示正在发生的事件类型(例如,添加、更新、删除),您只需要在此列表中引入一个初始化类型。

由于您需要能够将数据推送到客户端,而使用套接字显然可以做到这一点,它们确实引入了其他复杂性,因此,imho,最简单的解决方案是使用消息队列

要使用消息队列,客户端将向服务器正在侦听的已知队列发布消息。此消息应包含一个
replyTo
目的地(通常是客户端拥有的临时队列)。收到消息后,服务器应注册
replyTo
目的地,并向该
replyTo
目的地发送任何通知

我通常发现对所有数据使用通知机制(包括初始加载和更新)更容易,因为它可以防止客户端必须支持两种机制来获取数据。这很容易理解