我有一个用groovy编写的应用程序。它需要一些cmd参数并返回以前格式化的响应。随着系统的发展,似乎需要非常频繁地运行该应用程序(例如5分钟内执行80次),这会导致某些性能问题。特别是它一遍又一遍地创建所有对象,一次运行就可以填充高达60MB的RAM(可以很容易地计算出ROM/swap的使用情况)。将应用程序迁移到服务模式[java/groovy]
我想将其迁移到服务运行模式,该模式将简单地采用某些参数并返回格式化输出。但是:
- 应用程序总是由一个BAT/sh脚本(这不能更改)
- 两个脚本和应用程序都在同一台主机服务器上
所以,我触发想知道如何进行脚本和服务的交流会更好?
P.S .:对不起,我没有提及,它是一个独立的应用程序,它永远不会使用服务器或类似的东西,因为它似乎是多余的。解决方案应该尽可能简单并且非常轻便。例如:现在我能想到的最简单的事情就是永远不会迁移它(我知道它是矛盾的;)),并简单地引入一个DB,其中所有结果将被存储,并且应用程序将拥有它自己的时间表引起。每当用任何params触发它时,它应该简单地搜索DB中的最新结果并返回。轻松,轻松,快速和工作。 :)
请参阅编辑P.S您的建议是好的,谢谢,但简单的setDaemon和套接字构建完成相同和更容易。 – 2011-06-03 10:54:30
这取决于您的方法和返回对象以及要调用的不同方法的数量。使用RMI,您可以直接调用远程对象上的方法,并使用您可能需要的套接字来实现协议。 – Thor 2011-06-03 11:09:39
@Thor,这个想法是,我从来没有说过它会返回对象。它返回格式化文本。 – 2011-06-03 11:15:03