一、总结前一天的学习 在前一天的学习中我们知道、了解并掌握了 Web Server 结合 App Server 是怎么样的一种架构,并且亲手通过 Apache 的 Http Server 与 Tomcat6 进行了整合的实验。 这样的架构的好处在于: ü 减轻 App Server 端的压力,用 Web Server 来分压,即 Web Server 只负责处理静态 HTML 内容,而 App Server 专职负责处理 Java 请求,这对系统的performance 是一个极大的提升。 ü 安全,Web Server 端没有任何 Java 源代码包括编译后的东西,对 Internet 开放的只有 Web Server,因此黑客就算通过 80 端口攻入了我们的 Web Server,他能得到什么?除了静态 HTML 内容,任何逻辑,口令他都得不到,为什么?喏。。。因为我们的 App Server“躲”在 Web Server 的屁股后面呢。 需要注意的地方: ü 如果以这样的架构出现,你的 J2EE 工程,必须在 web.xml 里把那些个划分清楚,比如说: 我们可以知道*.do, *.action, *.jsp 是属于 JAVA 需要解析的东西对吧! 但是,如果你的 servlet 写成这样 /abc /123 /def 那么当我们在作映射时,需要把/abc, /123, /def 分别写成一行行的 JKMount 语句,是不是。。。OK,假设我们这个工程有 100 个 servlet(这个算少的哦),你该不会在 httpd.conf 文件中给我写这样的无聊的东西 100 行吧? 所以,我们在规划我们的 servlet 时需要有矩可循,即 pattern,因此我才一直强调,大家在 servlet 命名时必须统一成: /servlet/myServletabc 这样,我在做这个 Web Server 到 App Server 的 Mapping 时,是不是只要一句:JkMount /servlet/* ajp13 就可以搞定啦? ü 同样的架构有不同的变种: ² IIS+Tomcat 因为微软的 IIS 本身就是一个 Web Server,因此通过 IIS 和 Tomcat 的一个插件叫”isapi”的也可以作到这样的架构,但是我强烈不推荐,因为 JAVA 源于 Unix 系统,归于Unix 系统,Unix 可是不认什么IIS 的,一定请一定用Apache,你是JAVA 不是多奶(dot net)。 ² Apache+Weblogic ² IBM HttpServer(Apache 的一个变种)+IBM WAS6.x/WAS7.X ² Tomcat 集群 Apache 挂N 多个tomcat,由tomcat1… tomcat2… tomcat3… 等组成 ² Weblogic 集群 Apache 挂N 多个weblogic,由weblogic1… weblogic2… weblogic3… 等...