【问题标题】:Why is the Glassfish admin console so slow?为什么 Glassfish 管理控制台这么慢?
【发布时间】:2011-07-13 19:51:15
【问题描述】:

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

机器大部分空闲。玻璃鱼在做什么?有什么需要调整的以使其启动更快?

更新 1

示例- 我一直在尝试将我在本地实现和测试的一些 JDBC 配置复制到我的服务器。我刚刚浪费了一个小时试图复制配置,因为我无法让 dev 和 prod glassfish 控制台同时打开而没有一个超时。

我会打开开发控制台,最后是 prod 控制台,但是当我在开发窗口中单击返回时,它已经超时,现在尝试自行重启。

这太疯狂了。一个小时复制一个简单的 JDBC 连接?真的有人成功地在生产中使用它吗?

更新:2

我发现了两件事产生了巨大的影响:

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

  2. 我将我的 3.0 更新到 3.1。这似乎消除了很多启动延迟。

我希望这篇文章可以帮助其他人免受这种创伤。谢谢大家的建议。

【问题讨论】:

  • 我真的没有看到这里的编程问题?
  • @Tim:我会保留这些问题,因为很多程序员都遇到了麻烦(请参阅here
  • 恕我直言,编程非常重要,因为作为开发人员,这是我们每天必须处理的工具。这就像说我们不能问关于编译器或 JRE 的问题。

标签: glassfish


【解决方案1】:

就我个人而言,我使用的是笔记本电脑,我遇到了同样的问题。我发现我的设备正在低功耗状态模式下运行。一旦我将其更改为平衡功耗,所有耗时的处理都大大减少了。

【讨论】:

    【解决方案2】:

    我们通过更新工具首选项禁用了自动更新,问题已解决 请注意,您需要安装更新工具才能这样做

    【讨论】:

      【解决方案3】:

      不,不只是你。 Glassfish 3 管理 GUI 非常糟糕,据我所知,对此无能为力。但我确实注意到所有问题似乎都在表示层。如果我使用 asadmin,或者直接进行 AJAX 调用,那么性能是合理的。最好的办法是弄清楚如何在不使用 GUI 的情况下完成所需的工作。首先学习 asadmin 命令来执行您经常执行的任务,例如部署和取消部署应用程序。

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

      【讨论】:

      • 你是对的,关于表现层的吸吮是正确的。 GF 变得非常困惑,因为我有两个选项卡向不同的服务器实例打开(即使它们都在“本地主机”上,但它们有不同的端口。)
      【解决方案4】:

      可能与 Glassfish 更新模块有关。

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

      我遇到了同样的问题。但我可以通过最终在 Glassfish 的 Jira 中找到一个好的讨论线程来解决它。 Look here for possible solutions。您不必阅读整个帖子,请查看 Anissa Lam 于 2009 年 12 月 13 日 12:42:48 发表的摘要帖子。

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

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

      希望这会有所帮助!

      【讨论】:

      • +1 这确实让我想起了 glassfish 管理员挂起的问题,这是因为服务器无法访问 Internet。我想可能是注册码而不是更新。
      • 试图找到损坏的链接并找到这个page 提供更多详细信息如何实际禁用更新模块。
      【解决方案5】:

      您肯定发生了某种网络超时。这些操作应该需要几秒钟。 server.log 中有什么有用的吗?许多挂起问题往往与 DNS 反向查找有关。网络窥探会向您显示它试图访问的内容。

      【讨论】:

        猜你喜欢
        • 2011-11-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多