关于JBOSS处理大量http请求讨论

目前项目遇到这样一个问题(总共会有23W用户左右),当晚上用户高峰期时,认证服务器的并发数太多了.大量并发导致服务器崩溃.

环境:
jboss3.2.6
jdk1.4
认证服务器提供的时SOAP服务提供认证(是axis1.0).

性能测试时认证服务器能处理180的并发数,可现网出现的情况可能某一时刻的用户并发数远远大于180导致系统崩溃.

有没有一种机制,当认证能力达到系统颈瓶时,把其他的用户认证请求缓几毫秒再处理?

但是有一种情况我个人觉得不好处理,就是如果并发数超过linux最大句柄数1024个,这会抛出大量打开文件句柄数过多的异常,可以更改linux系统配置(增大句柄数解决),不过如果并发达到1024个,我们系统的用户至少是百万级别的,这个暂且不考虑.

能否考虑如何提高并发的用户数或者达到系统处理能力时,延缓一下超出数额的请求?

补充一下,一次认证会访问一次数据库,用的时jboss自带的连接池.

1个回答

[quote]可现网出现的情况可能某一时刻的用户并发数远远大于180导致系统崩溃. [/quote]

一台服務器,幷發大于180的,應該也正常的;

我覺得,你可以分析下高峰期的瓶頸;
我感覺高峰期的時候,数据库是瓶颈;

估计连接池的连接没到180吧?

[quote]有没有一种机制,当认证能力达到系统颈瓶时,把其他的用户认证请求缓几毫秒再处理?[/quote]
默认的Servlet线程,是有等待时间的.直到超出了最长等待时间,才放弃处理;

如果采用队列的方式,也未必不可以;
类似以前查询4,6级考试成绩的,请求一次,就开始排队;然后刷新查看结果;这样的话,服务器处理稳定;

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问