Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
相当于.net回收的Java_Java - Fatal编程技术网

相当于.net回收的Java

相当于.net回收的Java,java,Java,IIS中web应用的.net回收的Java等价物是什么 这是在IIS之外的linux机器上使用Java时发生的 只是停止和启动应用程序吗?通常JEE servlet容器提供重新加载应用程序的选项。i、 e.Tomcat在manager控制台上为每个应用程序都有一个重新加载按钮 顺便说一句,它还有一个按钮,可以触发完全的垃圾收集。不是真的-IIS和JVM以不同的方式工作。当你说在IIS中回收时,它基本上是重新启动工作进程。部署到IIS的每个Web应用程序都位于应用程序池和工作进程之下 就java而

IIS中web应用的.net回收的Java等价物是什么

这是在IIS之外的linux机器上使用Java时发生的


只是停止和启动应用程序吗?

通常JEE servlet容器提供重新加载应用程序的选项。i、 e.Tomcat在manager控制台上为每个应用程序都有一个重新加载按钮


顺便说一句,它还有一个按钮,可以触发完全的垃圾收集。

不是真的-IIS和JVM以不同的方式工作。当你说在IIS中回收时,它基本上是重新启动工作进程。部署到IIS的每个Web应用程序都位于应用程序池和工作进程之下

就java而言,情况并非如此。整个应用程序服务器在jvm上运行,在应用程序服务器中运行的应用程序服务器中部署了不同的Web应用程序

您可以使用DB连接池或ApacheCommons池进行池化(您重用的一些昂贵对象),这些池可以刷新,但不能完全像IIS那样刷新

即使这将是一个很好的功能-在现实中,如果你曾经 达到需要刷新应用程序池的情况时 代码/dll(可能是第三方)是罪魁祸首。肯定会有一个 需要解决的内存泄漏!此外,回收会话时,会话状态可能会丢失。显然,登录的用户会被注销(如果他们在事务的中间,他们可能会丢失数据),那么它可能导致一个非常不稳定的情况!p> 更新


您可以使用处理内存管理的工具。

您想做什么?在使用Java很长一段时间后,我对.Net和IIS进行了一些研究。我只是认为回收应用程序池的能力非常好,我想知道Java中是否有与内存泄漏临时解决方案等效的解决方案。@Paul重新启动应用程序以解决问题是一种黑客/解决方法,而不是一种解决方案。如果执行重新启动只是为了避免内存泄漏,它将在将来产生比您发现和修复关键代码更多的可能问题。我建议你-快速阅读信息。