Hi All,

I just got a stable configuration that allowed me to saturate the web
server and I would like to share my tweaks with you as I think this
will be useful for other people too.

Here is what I changed.

Host machine configuration
1) Increase the maximum number of open files.
Add the following to /etc/security/limits.conf:

*               hard    nofile           20480
*               soft    nofile           20480

2) Change some sysctl parameters
sysctl -w net.core.netdev_max_backlog=4096
sysctl -w net.core.somaxconn=4096
sysctl -w net.ipv4.tcp_max_syn_backlog=4096

Web Server:
1) PHP-FPM parameters
Increase pm.max_children in /etc/php5/fpm/pool.d/www.conf
pm.max_children = 64

2) Nginx
Disable logs in the file /etc/nginx/sites-available/default. This
should be done after making sure that the setup is correct. Otherwise,
this will make hard to debug issues

                #error_log /var/log/nginx/example_error.log;
                error_log off;
                #access_log /var/log/nginx/example_access.log;
                access_log off;

3) Faban client:
To have a decent amount of steady state time you need to increase the
java heap size of faban driver, otherwise the driver is killed without
a summary:
To do so modify /web20_benchmark/deploy/run.xml as follows:

Replace
<jvmOptions>-Xmx1g -Xms256m -XX:+DisableExplicitGC</jvmOptions>
to
<jvmOptions>-Xmx4g -Xms1024m -XX:+DisableExplicitGC</jvmOptions>

4) Misc. settings

In my setup, I am using swarm to run in multiple nodes. To reduce
calls to consul store, I added the IP addresses of the server in the
/etc/hosts.

This setup allowed me to saturate the web_server node.

Thanks Cloudsuite team for the dockers and the initial setup.
Keep up the good work!
--
Leonardo

Reply via email to