Java 一场战争呼唤另一场战争

Java 一场战争呼唤另一场战争,java,tomcat,tomcat7,Java,Tomcat,Tomcat7,我目前正在实现一个小型应用程序a。这个应用程序a从用户那里获取一些对象,并在将这些对象传递到另一个web应用程序B(最终将存储这些对象的信息)之前进行一些预处理 现在来看这个问题:从应用程序A调用应用程序B的可能方法是什么?哪一个是最有效的(在运行时速度方面) 这个调用是单向的,可能是异步的,并且总是发生在同一个tomcat服务器上。最好的方法是从体系结构的角度来改变它:Monolith vs Microservice 您可以将这两个应用程序中的REST、WSDL(soap)服务公开给外部的其他

我目前正在实现一个小型应用程序a。这个应用程序a从用户那里获取一些对象,并在将这些对象传递到另一个web应用程序B(最终将存储这些对象的信息)之前进行一些预处理

现在来看这个问题:从应用程序A调用应用程序B的可能方法是什么?哪一个是最有效的(在运行时速度方面)


这个调用是单向的,可能是异步的,并且总是发生在同一个tomcat服务器上。

最好的方法是从体系结构的角度来改变它:Monolith vs Microservice

您可以将这两个应用程序中的REST、WSDL(soap)服务公开给外部的其他应用程序

一般来说,所有REST都不如SOAP标准化,WSDL也需要这样的契约


REST是独立于协议的,可以使用任何具有标准URI方案的协议,使用内存中的消息队列,例如提供快速异步通信、持续打开连接(避免REST可能会出现的连接延迟)和许多其他功能,
B
调用由
a提供的服务
从消息队列到通过不同协议(如REST/HTTP)直接连接的各种可能性。不过你还不必担心效率。@RafikBELDI:谢谢你的意见,你在说什么样的Web服务?您推荐哪种类型的运行时效率?@Kayaman为什么我还不应该担心效率呢?我们很难将每次通话时间保持在10毫秒以下,在这段时间内需要进行大量计算,因此效率实际上是我最关心的问题。@kajk好吧,因为你问这个问题后,似乎根本不知道自己在做什么。您主要关心的应该是学习在web应用程序之间以任何方式进行通信,而不是对您没有的解决方案的理论速度感到疑惑。但至少现在你有了一个可以在谷歌上搜索的关键词(webservices),但你离解决方案还有很长的路要走。遗憾的是,我没有足够的时间重写整个应用程序B,将其模块化为多个微服务。。但这无论如何都超出了这个问题的范围。。rest或soap api的开销不是很大吗?在同一个tomcat服务器中,难道没有其他方法可以用更少的开销在应用程序之间进行通信吗?很抱歉,我已经有一段时间没有使用这种方法了,因为我自己的研究通常已经足够了。我没有看到“征求建议”的选项。非常感谢您提供MQ指针,在这里它似乎是一个非常好的选择。不用担心,从回答者的角度来看,当问题信息不足时,它只是令人沮丧。