After some server configuration, i decided to do a stress test using siege.
2 front servers in lxc containers, load balancing nginx - on the host machine. (if need, I add nginx and sysctl configs later)
Host machine - dedicated server on OVH:
Intel Xeon E5
2x E5-2630v3 2.4 GHz (32 cores at all)
128 GB of RAM DDR3
2x 480GB SSD (RAID 1)
Some parameters of containers:
8 cores, 8192 cpu units per core
8 GB RAM
In lxc conteiners - php + static (images, css, js). Future load will be on static content output. The test was conducted on a static page with js, css and images.
In general, the test results are different, and strange behavior:
siege http://example.com/some_url -r50 -c250
test #1:
Transactions: 12451 hits
Availability: 99.61 %
Elapsed time: 36.84 secs
Data transferred: 80.52 MB
Response time: 0.06 secs
Transaction rate: 337.98 trans/sec
Throughput: 2.19 MB/sec
Concurrency: 21.43
Successful transactions: 12451
Failed transactions: 49
Longest transaction: 1.18
Shortest transaction: 0.04
test #2, same parameters
Transactions: 12152 hits
Availability: 97.22 %
Elapsed time: 200.90 secs
Data transferred: 29.16 MB
Response time: 1.15 secs
Transaction rate: 60.49 trans/sec
Throughput: 0.15 MB/sec
Concurrency: 69.67
Successful transactions: 12152
Failed transactions: 348
Longest transaction: 63.40
Shortest transaction: 0.16
In the first case, a good performance, sometime during the second results worse and strange behavior, namely:
It begins test - CPU of each container is loaded on ~50%, but load decreases over time, and the response time - increases, appears connection timeouts. Then the speed is increased, and those "waves" before end of the test. During tests no anomaly in top/htop, disks I/O or servers logs.
Thanks in advance for your advice;)
0 Answers