为什么Glassfish管理控制台这么慢?

Geo*_*old 9 glassfish

我正在运行GlassFish Server Open Source Edition 3.0.1(版本22).在我的开发环境(Mac OSX,4核和8GB RAM)和生产(Linux,2核,4GB)中,控制台启动都非常缓慢.

机器很大程度上是空闲的.什么是玻璃鱼呢?有什么需要调整才能让它更快启动?

更新1:

示例 - 我一直在尝试复制一些我在本地实现并测试到我的服务器的JDBC配置.我只是浪费了一小时试图复制配置因为我不能同时打开dev和prod glassfish控制台而没有其中一个超时.

我将打开开发控制台,然后最终生成一个,但是当我在开发窗口中单击它时它已经超时,现在尝试重新启动.

疯了吧.一小时复制一个简单的JDBC连接?有没有人真正成功地在生产中成功使用它?

更新:2

我发现两件事情产生了巨大的变化:

  1. Glassfish UI的Ajax方面看起来非常脆弱.我打开了两个浏览器标签,一个打开,localhost:4848另一个打开localhost:9000.第一个选项卡是实际在localhost上运行的glassfish服务器.第二个是远程服务器,端口转发以通过ssh显示为本地服务器.通常这不是问题,但我怀疑它会混淆glassfish中的会话处理,以便在同一个"主机"上看到两个服务器,即使它们位于不同的端口上.

  2. 我将3.0更新为3.1.这似乎已经消除了很多启动延迟.

我希望这篇文章可以帮助别人不受这种创伤.谢谢大家的建议.

Mat*_*ndy 10

它可能与Glassfish更新模块有关.

在每个控制台启动期间,更新模块会尝试计算所有可用更新.自从你使用GF 3.0.1以来,自从2月28日新的Glassfish 3.1发布以来,有很多更新.最多可以有70个或更多更新,并且更新服务器自那天起必须处理大量请求.

我有同样的问题.但我可以通过最终在Glassfish的Jira中找到一个好的讨论主题来解决它.在这里寻找可能的解决方案.您不必阅读整个帖子,请查看Sun的摘要帖子,2009年12月13日12:42:48 Anissa Lam.

总结一下这篇文章(详情可以在那里找到):

  1. 向glassfish配置添加jvm-option以禁用管理控制台的网络访问
  2. 重命名glassfish模块目录中的更新模块.

希望这可以帮助!


Mik*_*zak 5

不,这不仅仅是你.Glassfish 3管理员GUI糟透了,据我所知,没有什么可以做的.但我确实注意到所有问题似乎都在表示层中.如果我使用asadmin,或直接进行AJAX调用,那么性能是合理的.最好的办法是弄清楚如何在不使用GUI的情况下完成所需的操作.首先,学习asadmin命令,了解您经常执行的任务,例如部署和取消部署应用程序.

如果我想将JDBC配置从一个实例复制到另一个实例,我只需打开domain.xml文件并手动复制jdbc-resource和jdbc-connection-pool元素.(可能有一种方法可以用asadmin'正确'做到这一点,但学习如何做到这将比我做'错误'的方式花费我十倍的时间,所以我从来没有打扰过.)