We are using HaProxy 1.8.20 version on Centos 7 with 4 core. We have very high load site (traffic around 250 Mbs per second, in peaks 300 Mbit per second).
We are using acl-rules in config and etc. But the problem is:
- We had very high CPU Utilization for haproxy process. And we decided to activate multithread mode (nbthread 4) and this is helped to improve situation
- But sometimes in high load haproxy did not have time to process network packages and we received high recv queue in netstat (see screen: https://i.imgur.com/iy9JpjE.jpg)
- We activated multiprocess mode (nbproc=2 and nbthread=2) and our queue reset to zero and now all OK…
My question is: which the difference between multiprocess and multithread mode from performance point of view? Why in our case multiprocess better than multithread?