Tomcat 是 Apache 软件基金会( Apache Software Foundation )的 Jakarta 项目中的一个核心项目,由 Apache 、 Sun 和其他一些公司及个人共同开发而成。由于 有了 Sun 的参与和支持 , 最新的 Servlet 和 JSP 规范 总是能在 Tomcat 中得到体现, Tomcat 5 支持最新的 Servlet 2.4 和 JSP 2.0 规范。因为 Tomcat 技术先进、 性能稳定,而且免费 ,因而深受 Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器。目前最新版本是 7.0 。
Tomcat 运行时占用的系统资源小 , 扩展性好 , 支持负载平衡与邮件服务 等开发应用系统常用的功能;而且它还在 不断的改进和完善 中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
Apache Tomcat 6.x 在汲取 Tomcat 5.5.x优点的基础上,实现了 Servlet 2.5 和 JSP 2.1 等特性的支持。
Apache Tomcat 7.x 是目前的开发焦点,仍基于 Apache Software License v2.0 标准,同时也是自 2006 年以来的首个主要发布版本。它在汲取了 Tomcat 6.0.x 优点的基础上,实现了对于 Servlet 3.0 、 JSP 2.2 和 Expression Language ( EL ) 2.2 等特性的支持。除此以外的改进列表如下:
• Web 应用内存溢出侦测和预防
• 增强了管理程序和服务器管理程序的安全性
• 一般 CSRF 保护
• 支持 web 应用中的外部内容的直接引用
• 重构 (connectors, lifecycle) 及很多核心代码的全面梳理
Resin 是CAUCHO公司的产品,是一个非常流行的 支持servlets 和jsp的引擎, 速度非常快 。Resin本身包含了一个支持HTTP/1.1的WEB服务器。虽然它可以显示动态内容,但是它 显示静态内容的能力也非常强 ,速度直逼 APACHE SERVER。许多站点都是使用该WEB服务器构建的。
Resin 也可以和许多其他的WEB服务器一起工作,比如Apache server和 IIS 等。Resin支持 Servlets 3.0 标准和JSP 1.2 标准 。熟悉 ASP 和 PHP 的用户可以发现用Resin来进行JSP编程是件很容易的事情。
Resin 支持负载平衡 (Load balancing),可以增加WEB站点的可靠性。方法是增加服务器的数量。比如一台SERVER的错误率是1%的话,那么支持负载平衡的两个Resin服务器就可以使错误率降到0.01%。
Resin 也是 全免费 的,从站点下载的就是完整版本。相对于 tomcat ,后者更象是一个正在研究的项目。目前resin 可以支持sun 的j2ee ,而tomcat 不能直接支持,而j2ee是基于java服务器端大系统的基础。Resin3 之后已经不在是一个简单的jsp容器,并且 支持ejb,jta 等企业功能。目前resin4 (2010年后已经比较稳定)性能更是优秀。并且已经支持servlet 3.0标准. pro 版本是收费版本,支持负载均衡和文件缓存 。普通版本独立作为web服务器性能就要差一些, 可以使用apache+resin的方案借助apache的缓存功能提高性能,但负载均衡就是普通版不能比的 。CAUCHO公司还为resin 添加了php 解析执行功能,能够运行php程序。但相对 php的原生版本还是有一定差距。
Tomcat 和Sun Java 结合的最好,和其他应用服务器配合使用可支持完整的j2ee标准,应用也很广泛。但是从Java 普遍存在的 编码问题 来看,还是Resin 解决的最好。还有从使用的角度讲,个人认为Resin比Tomcat方便,而且Resin也可以结合Jbuilder6等ide使用。Resin 强调使用Xml 技术。