我有一个要求,Groovy应用程序应该将事件通知发送到另一个Java Web应用程序,而不是显示该数据 网络界面。
我不想使用像ActiveMQ或RabbitMQ这样的队列,因为这会引入一个额外的层,如果不存在其他解决方案,将会使用它。
我已经分享了一个想法,即我应该从我的Java应用程序中公开一个Web服务,它将由第一个应用程序和数据使用 发送到网络服务然后将在第二个应用程序中收到,并以某种方式显示在它的网络界面上。
我不确定这是如何工作的,即第二个应用程序的Web服务中接收的数据将如何显示在其Web界面上。
请帮助我找出适合这项任务的正确解决方案。
答案 0 :(得分:2)
我建议您创建要传输到java Web应用程序的数据的XML表示。在java Web应用程序上,如果使用简单的servlet,请创建一个可以发布此xml的新servlet。然后,servlet可以将其持久保存到数据库中。然后,当用户在某个时间点登录到Web应用程序时,可以检索此信息。 如果您需要更多帮助,请与我们联系。我只能根据这个问题回答这么多问题。关于java web应用程序使用的框架以及您希望传输的数据的更多信息,可能会更容易添加更多信息。
答案 1 :(得分:2)
您的问题实际上是“如何从服务器向其他应用程序发出的浏览器/移动客户端发送通知”。
如果您对延迟有非常严格的要求,那么我建议使用https://github.com/OpenHFT/Chronicle-Queue 它是由HFT人员在一个线程中每秒处理6百万条消息而创建的。
要在用户屏幕上显示事件,请考虑使用WebSockets,服务器发送事件,推送通知,长轮询等机制,具体取决于您的要求(如浏览器支持)。
实际上,在大多数情况下,使用什么样的运输并不重要。除非你有超微的非功能性要求,如亚微秒等待时间,你可以自由选择任何机制,例如: HTTP,JMS。
尽量不要根据实际需求过度设计和设计软件 - 而不是堆栈溢出答案。
干杯!