|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2007-07-30
现在我们的应用是个广告联盟,广告代码请求量非常之大(日请求千万级),现在的瓶颈应该在前端的Web服务器,高并发,我专门用台双P4 3.0 + 2G的PC服务器做Apache转发,负载给三台运行tomcat的服务器处理。一开始 一下就达到了MaxClients,后来我改了配制设置到20000,一下子服务器就抗不住挂了,大家有没在这种请求量的经验?apache的参数如何设置比较理想?
另外我的apache用的是prefork的MPM,我按照网上的方法用--with-mpm=worker,用httpd -l一看还是prefork的??另外,对于只做高并发转发服务的apache服务器,用哪种模式比较合适? 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2007-07-30
另外,最近遭遇同行的DDOS攻击,极其郁闷,好像对于DDOS就束手无策了??现在我都搞不清什么到底是遭攻击,还是被我们自己的高请求给拖跨了。。。:(,netstat -an|wc -l 有30000之多,其中25000个是TIME_WAIT的
|
|
| 返回顶楼 | |
|
最后更新时间:2007-07-31
高并发肯定是worker效率高了,apache需要重新编译的
日请求千万级不算高,30000连接肯定不正常了,都是正常请求的话,tomcat肯定抗不住,默认150max远远不够,不知道tomcat的机器什么配置,机器够强的话把http/apr的连接都开大一点,搞个3,5千,应该就没这么多wait了,还有最好升到tomcat6 |
|
| 返回顶楼 | |
|
最后更新时间:2007-07-31
2台apache能撑30000,应该算不错了, 但是3台tomcat平均撑住10000有点吃力的, 毕竟业务逻辑, 数据库读取都在java端.
建议楼主, 把tomcat服务器压到最高load后, 看看日志情况, 优化系统, 解除部分瓶颈. |
|
| 返回顶楼 | |
|
最后更新时间:2007-07-31
现在我感觉瓶颈也在tomcat了.早上的时候AJP平均返回都是0.0几的(不知道是什么单位,秒?),下午的时候返回都是上百,可能是网络问题,或者是tomcat的压力?(apache和tomcat不在同个机房的服务器上,但两个机房相互传输速度还是不错的,传文件3-5M/s).
Tomcat maxThreads="1000" 处理这个量是不是太小了?我们的逻辑很简单,大部分请求就是插入一条记录. |
|
| 返回顶楼 | |
|
最后更新时间:2007-08-02
最好用resin,性能比tomcat好多了
|
|
| 返回顶楼 | |
|
最后更新时间:2007-08-02
davidcen 写道 最好用resin,性能比tomcat好多了
拿评测数据来看看,如果没数据就是瞎说了 |
|
| 返回顶楼 | |
|
最后更新时间:2007-08-07
Johnny 写道 现在我感觉瓶颈也在tomcat了.早上的时候AJP平均返回都是0.0几的(不知道是什么单位,秒?),下午的时候返回都是上百,可能是网络问题,或者是tomcat的压力?(apache和tomcat不在同个机房的服务器上,但两个机房相互传输速度还是不错的,传文件3-5M/s).
Tomcat maxThreads="1000" 处理这个量是不是太小了?我们的逻辑很简单,大部分请求就是插入一条记录. 能不能把数据放在缓存中,达到一定数量后再插入数据库中,应该能减少每个请求的连接时间 |
|
| 返回顶楼 | |
|
最后更新时间:2007-08-07
flyraincn 写道 Johnny 写道 现在我感觉瓶颈也在tomcat了.早上的时候AJP平均返回都是0.0几的(不知道是什么单位,秒?),下午的时候返回都是上百,可能是网络问题,或者是tomcat的压力?(apache和tomcat不在同个机房的服务器上,但两个机房相互传输速度还是不错的,传文件3-5M/s).
Tomcat maxThreads="1000" 处理这个量是不是太小了?我们的逻辑很简单,大部分请求就是插入一条记录. 能不能把数据放在缓存中,达到一定数量后再插入数据库中,应该能减少每个请求的连接时间 看样子是用db来存储漏出/点击呀。每天分析日志再批量插入可行得通吗? |
|
| 返回顶楼 | |
|
最后更新时间:2007-08-07
galaxystar 写道 2台apache能撑30000,应该算不错了, 但是3台tomcat平均撑住10000有点吃力的, 毕竟业务逻辑, 数据库读取都在java端.
建议楼主, 把tomcat服务器压到最高load后, 看看日志情况, 优化系统, 解除部分瓶颈. 对于一般web应用,好比javaeye论坛,一台Apache能撑到多少? 我们的Apache基本上同时链接过3000就没什么响应了,DELL 2850机器,是不是配置的不对? |
|
| 返回顶楼 | |









