大型Java Web系统服务器选型问题探讨(3)
来源:asp之家 发布时间:2010-05-02 18:28:00
我们的压力不在数据库层,在web层和F5。 当高峰的时候 ,F5也被点死了,就是每秒点击超过30万,web动态部分根本承受不了。根据我们程序记录,20台web最多承受5000个并发,如果再多,tomcat就不响应了。就像死了一样。
这个回复让接下来的讨论都集中于Web容器的性能优化,但是JavaEye站长robbin发表了自己的意见,将话题引回了这个项目的架构本身:
performance tuning最重要的就是定位瓶颈在哪里,以及瓶颈是怎么产生的。
我的推测是瓶颈还是出在EJB远程方法调用上!
tomcat上面的java应用要通过EJB远程方法调用,来访问weblogic上面的无状态SessionBean,这样的远程方法调用一般都在100ms~500ms级别,或者更多。而如果没有远程方法调用,即使大量采用spring的动态反射,一次完整的web请求处理在本地JVM内部的完成时间一般也不过20ms而已。一次web请求需要过长的执行时间,就会导致servlet线程被占用更多的时间,从而无法及时响应更多的后续请求。
如果这个推测是成立的话,那么我的建议就是既然你没有用到分布式事务,那么就干脆去掉EJB。weblogic也可以全部撤掉,业务层使用spring取代EJB,不要搞分布式架构,在每个tomcat实例上面部署一个完整的分层结构。
另外在高并 * 况下,apache处理静态资源也很耗内存和CPU,可以考虑用轻量级web server如lighttpd/litespeed/nginx取代之。
robbin的推断得到了网友们的支持,davexin也认同robbin的看法,但是他解释说公司认为放弃SLSB存在风险,所以公司倾向于通过将Tomcat替换为Weblogic Server 10来提升系统的用户支撑能力。robbin则马上批评了这种做法:
坦白说我还从来没有听说过大规模互联网应用使用EJB的先例。为什么大规模互联网应用不能用EJB,其实就是因为EJB性能太差,用了EJB几乎必然出现性能障碍。
web容器的性能说到底无非就是Servlet线程调度能力而已,Tomcat不像WebLogic那样附加n多管理功能,跑得快很正常。对比测试一下WebLogic的数据库连接池和C3P0连接池的性能也会发现类似的结论,C3P0可要比WebLogic的连接池快好几倍了。这不是说WebLogic性能不好,只不过weblogic要实现更多的功能,所以在单一的速度方面就会牺牲很多东西。
以我的经验来判断,使用tomcat5.5以上的版本,配置apr支持,进行必要的tuning,使用BEA JRockit JVM的话,在你们目前的刀片上面,支撑500个并发完全是可以做到的。结合你们目前20个刀片的硬件,那么达到1万并发是没问题的。当然这样做的前提是必须扔掉EJB,并置web层和业务层在同一个JVM内部。


猜你喜欢
- 经常有人会问:我的网站被莫名的挂上木马,怎么能有效的预防网站被挂马?这个问题需要分具体情况来具体分析。一、如果是自己的服务器因为你只需要远程
- ascii:设定以ASCII方式传送文件(缺省值)bell:每完成一次文件传送,报警提示。binary:设定以二进制方式传送文件。bye:终
- DEDECMS程序首页的SEO优化,看来用DEDECMS程序的站长确实非常多,之前因为没有细分去讲解,所以虽然可能不够完善,但对于一般的个人
- 一、我只用GG的“AdSense 内容广告”所选广告代码只有三种:要么纯文字,要么纯图片,当然还有文
- 网络管理阶层的工作就是保证网络的正常工作,从而使得职工们的工作不被打断。可问题在于事物并非总是按照理想状况发展,事实上经常会出现平地起风波的
- “冲击波”等蠕虫病毒特征之一就是利用有漏洞的操作系统进行端口攻击,因此防范此类病毒的简单方法就是屏蔽不必要的端口,防火墙软件都有此功能,其实
- 友情链接在自己的网站上放置对方网站的或网站名称,并设置对方网站的超级链接,使得用户可以从合作网站中发现自己的网站,达到互相推广的目的,它是在
- vsftpd基于系统用户访问ftp服务器,系统用户越多越不利于管理,不利于系统安全,这样就以vsftp虚拟防护的方式来解决。虚拟用户没有实际
- 404错误页面是当有人试图访问你的网站尚不存在的某个网页时显示的错误页面。我们的托管帐户允许你使用主页当作404错误页面page,或者你可以
- 不算前言的前言好像已经很久没有写过安全方面的文章了,所谓安全圈子里面,大家也许认为玄猫消失了,不过,我想,作为骇客的玄猫也许从来没有出现过吧
- 本文实例讲述了Linux环境(CentOS6.7 64位)下安装subversion1.9.5的方法。分享给大家供大家参考,具体如下:安装环
- centos7修改ssh默认登录端口和centos6差不多,就是防火墙不一样,然后关闭selinux最好。【修改ssh默认22端口】vi /
- 站长最关心的就是流量,网站流量靠的是排名,笔者在这里分析总结一下排名下降的原因,让你的网站立于不败之地:一、排名下降原因一:外力因素 1、搜
- 概要本文介绍了如何配置“域名系统”(DNS) 服务器,使其承载可从外部访问(即从Internet 访
- 北京时间10月28日消息,据国外媒体报道,Facebook昨日召开了年度Facebook 开发者大会,表示Facebook用户十分热衷于游戏
- 昨天的服务器被黑的事件中,我自己也是有一些责任,因为平时懒得对服务器安全进行设置,有些设置其实几分钟就可以设置完成,可就是懒惰,结果万一服务
- Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在
- 企业信息化技术的应用,以不可逆转。随着文件服务器、ERP管理软件等等在企业中生根发芽,应用服务器也逐渐在企业中普及起来。以前在企业中有一台应
- 近日,国际知名的信息安全厂商卡巴斯基在沪举行了“自信自强,勇往直前”新闻发布会,揭开了卡巴斯基企业级新品的神秘面纱。据悉,新推出的卡巴斯基开
- 一个网站建成,做SEO优化是必不可少的步骤,但是如何做SEO才是最有效果的?以下四个流程是必不可少的。一、寻找并确定你的关键词寻找、确定你的