我正在 ubuntu 16.04 环境中开发 siege 4.0.2。当我模拟超过 1100 个用户时,我需要一个失败的事务,我知道如果事务失败意味着服务器内存有问题,可能是由于失败而导致的。如何理解失败的交易?以及如何解决交易失败的问题来了?
siege -c1190 -t1m http://192.168.1.11:8080/
HTTP/1.1 200 7.02 secs: 57 bytes ==> GET /kiosk/start
HTTP/1.1 200 7.01 secs: 57 bytes ==> GET /kiosk/start
siege aborted due to excessive socket failure; you
can change the failure threshold in $HOME/.siegerc
Transactions: 3263 hits
Availability: 76.11 %
Elapsed time: 9.34 secs
Data transferred: 0.18 MB
Response time: 1.98 secs
Transaction rate: 349.36 trans/sec
Throughput: 0.02 MB/sec
Concurrency: 691.94
Successful transactions: 3263
Failed transactions: 1024
Longest transaction: 7.75
Shortest transaction: 0.03
当我模拟 1100 个用户时,我得到了一个error discriptor tables full sock. c 119: Too many open files
,然后我做ulimit - n 10000
了,错误就消失了。然后我再次模拟1100个用户,我得到一个新的错误
[error] socket: read error Connection reset by peer sock.c:539: Connection reset by peer
无法抛出错误。如何消除此错误?任何人请帮助我