我们如何让Java应用程序永远运行

时间:2017-05-26 06:37:24

标签: java web-services microservices

我想编写一个应该永远运行的java应用程序。 Webservice是一种方法,但我不想将其作为webservice运行。 我只想在应用程序内部运行一些线程,我不想这样处理任何webRequest。

请告诉您还有其他方法吗?

2 个答案:

答案 0 :(得分:3)

让一个类的main方法如下所示:

final class Forever
{
    private Forever ()
    {}

    public static void main (String [] args)
    {
        while (true)
        {
           try
           {
               // don't do anything here
               // especially do NOT connect to any databases
           }
           catch (Throwable t)
           {

           }    
        }
    }
}

将此Java代码放在运行Linux的太空探测器上,并使用无限能量源。确保它远离行星,爆炸的恒星,黑洞等。

注意:不要让人类连接到探头。

这可能无法获得你想要的永恒;然而,它可能会一直持续到宇宙结束。

<强>更新: 到目前为止,我已经在我的开发环境中运行了大约 5 10分钟,它仍在运行!我很快就会把它推到QA。

答案 1 :(得分:0)

您可以使用线程永久运行任何应用程序(最好是通过线程池),但您应该非常小心GC。因此,您可能需要密切关注实例管理,定期堆转储并对应用程序进行微调。希望这会对你有所帮助!