How do I configure a web server for high volume processing?

Configuration settings that are helpful: Edit /etc/redis/redis.conf and configure, configure MySQL with a larger InnoDB buffer size. If you have sufficient memory, configure this to use a large portion of it, and Disable Transparent Huge Pages (THP)

When configuring a web server for high volume (e.g., 20 million+ reads per month), there are a few configuration settings that would be helpful:

 

Edit /etc/redis/redis.conf and configure

timeout 500
tcp-keepalive 300

 

Configure MySQL with a larger InnoDB buffer size.  If you have sufficient memory, configure this to use a large portion of it.  For example, to set it to 4GB, open the MySQL shell (openalpr-web-manage dbshell) and run:

SET GLOBAL innodb_buffer_pool_size=4294967296;

 

Disable Transparent Huge Pages (THP).  This feature (on by default) impacts performance of Redis detrimentally.  To disable:

sudo apt install sysfsutils
sudo /bin/sed -i '$i kernel/mm/transparent_hugepage/enabled = never' /etc/sysfs.conf