Oracle 10g 应用服务器,Java 1.5 + JSF(表示层)+ iBatis(数据库通信层)
在我目前工作的地方,有时会增加对部署目录进行小调整的必要性。我不否认这不是最佳做法(如果我在这个网站上停留的时间足够长,也许我最终会成为最糟糕做法的例子——但它也有好的一面:)
因此,我们调整的三个基本内容是:
- 重新编译的 Java 类文件
- 修改过的 JSP
- 修改了 XML 格式的 iBatis 查询“地图”
例如,当报告了一个错误,并且客户急于纠正它时,我们对 java 文件进行更正,重新编译该类,并将生成的 .CLASS 文件复制到旧版本所在的位置部署。同样,我们覆盖修改后的 JSP(我想应用服务器会神奇地理解新 JSP 何时到达,并在必要时重新编译它)。
在上述两种情况下,作为预防措施,我们还重启了Application Server。我从未尝试查看更改是否会在不重新启动的情况下工作 - 如果服务器以某种方式将类/JSP 缓存在内存中,情况就不会如此。所以,这是我的第一个问题 - 类/JSP 文件中的更改是由应用服务器跟踪?也许不需要重启?
在 iBatis XML 的情况下,我们已经看到新的查询是从更新的 XML 中获取的,并且不需要重新启动。尽管如此,有时在取消部署时,我们会看到一些 XML 文件保持锁定状态,这意味着 iBatis 缓存了某些内容(不确定是什么)。
我想知道,从长远来看,这些调整会如何影响系统的稳定性?除了我们这里的其他人会做这样的事情吗?