主流java的web容器,主要是Tomcat, jboss, jetty, resin。由于以前我们主要用的是jboss4.0.5,但jbosse用的servlet容器是tomcat5.5,所以只进行tomcat和 jetty的比较,两个谁好谁坏,适合你用,你才知道。resin就不说了,好像已经成为了history.
现在Tomcat版本已经是8.0了,在Tomcat6和7都增加了很多新的特性。
版本 特性
Tomcat7系列
Tomcat6系列
由于jetty出生不好,不像tomcat是在apache强大的基金下面成长,所以变化很多。现在归于eclipse基金组织下,官方文档没有 tomcat那么细和明确。现在Jetty的最新版本是8.0.4,在我们这期使用的是jetty7.2.0,这两个版本系列与jetty6区别比较大。详细的学习了解及性能,在以后的分享再给出。
综上所述,其实我们选用jetty或者tomcat并不是因为jetty一定比tomcat好,而是因为什么手顺,用什么。
测试环境:
Tomcat: 7.0.22 JDK:1.6.0_11 系统:linux,就是我们的开发机 场景:访问一个简单的jsp页面,没有什么业务代码,纯测试及处理request的性能与并发。 总的说来,BIO下,较为稳定,而NIO波动较大。但在10240并发下,bio彻底玩完,而NIO依然坚挺。所以在大并发下,NIO是不二选择。
Tomcat的NIO和BIO配置及运行时截图
名称配置运行时BIONIO五、为什么要用jetty?
其实这篇分享,主要是想说明三点。
在web容器上,我们要与时俱进,不能只追求现在,在高并发下,我们要有相关的经验及应对措施。NIO要优于BIO,而jetty同时也是推荐用NIOjetty的灵活小巧,加载速度快,方便调试等都是促使我们去选择 tomcat公司很多不屑于用一样,其实tomcat还是很不错的。用tomcat支持并发2000的,也是经常干的事。之所以选择jetty,那原因就不多说了,jboss不给力而且又大,tomcat公司不支持,所以jetty就这样成为项目中的不二选择,当然他也是非常优秀的产品。 综上所述,在性能上tomcat与jetty差距并不大,可以说没有。只是jetty相对来说由于其灵活性,插件化,导致jetty某些场合(如虚拟机、嵌入式)更节约资源,当然对于我们现在的应用可以忽略这个因素。还是多关注一下我们的SQL语句和业务逻辑代码吧!转载于:https://www.cnblogs.com/YingYue/p/3867876.html
相关资源:数据结构—成绩单生成器