Apusic1.0与Tomcat4.0的比较


(来源:http://www.apusic.com)

Apusic和Tomcat并不能直接比较,因为tomcat只是一个Web Server,它只包含Servlets和JSP,而Apusic还包含EJB, JMS, JNDI, JTA/JTS等J2EE中的所有规范。

Apusic的早期版本仅是一个EJB Server,名称是bluewater,我们最初的想法是将bluewater和tomcat集成在一起,组成一个完整的J2EE应用服务器,但经过测试后发现tomcat在稳定性和性能方面都达不到要求,而且在和bluewater结合时也存在很多衔接上的问题,最终我们放弃了tomcat,决定自己编写Web Server。虽然这一决定使Apusic的开发周期延长了半年多时间,但从目前的效果来看,Apusic比bluewater+tomcat要强的多。

Apusic和tomcat都完全遵循Servlets和JSP规范,如果只用到这两个API,选择tomcat还是不错的,但如果要做J2EE应用,还必须将tomcat和jboss, jonas等其他EJB Server结合,这在衔接上或多或少都会存在一些问题,而Apusic具有统一的管理界面(JMX), 统一的交易和安全模型,统一的应用部署方式,这在开发和部署大型应用时要比xxxx+tomcat方式要好。

Tomcat 4.0支持Servlets 2.3和JSP 1.1,在Apusic 1.0中也支持Servlets 2.3,但对JSP 1.1的支持会稍后推出,因为JSP 1.1在最终发布时可能会有比较大的变动。

Tomcat可以和Apache和IIS集成,apusic目前只能和Apache集成,以后我们会开发一组API和目前大多数Web Server集成。

Apusic支持分布式Session,而Tomcat不支持。分布式Session是在实现Web Server集群和负载均衡时首先要解决的问题。

Apusic使用JMX对服务器进行配置和管理,Tomcat目前还没有类似的管理界面。

Apusic可以部署标准J2EE的应用(ear文件),Tomcat必须将其中的war文件分离出来才可以部署。

Apusic使用统一的接口处理和安全有关的问题,而Tomcat在和其他EJB Server结合时这是最难处理的问题。