Overview
When you resize a server to increase or decrease the amount of memory or CPU that is available to PhixFlow, you must update some configuration settings to efficiently use the available resources.
Memory Changes
Consider how Tomcat and the PhixFlow database make use of memory.
Tomcat
After making changes to memory settings, remember to run systemctl daemon-reload
before restarting; see Managing Tomcat.
Windows
- Open Tomcat properties;
- Update Initial Memory Pool and Maximum Memory Pool to the new settings.
- Restart Tomcat
Linux
- Update the settings in /etc/systemd/system/tomcat.service.
- Change CATALINA_OPTS to the memory settings you need.
- Run
systemctl daemon-reload
and restart Tomcat.
Tor details about stopping and starting Tomcat, see Managing Tomcat.
Database
MariaDB
When you make changes to the available memory, update the affected MariaDB settings, especially innodb_buffer_pool_size
.
To update innodb_buffer_pool_size
,
- Edit the file /etc/mysql/my.cnf and update the setting:
innodb_buffer_pool_size = 2G
See MariaDB Planning for a rule-of-thumb rule for determining a new buffer pool size. Restart the MySQL service:
sudo systemctl stop mysql
sudo systemctl start mysql
SQL Server
Microsoft recommend that no fixed maximum memory is set on the database; see MS SQL Server Planning. In this case you do not need to update the memory settings for the SQL Server when after changing the available memory. The SQL server should automatically adapt.
You do need to monitor and tune your SQL server over time.
CPU
If you change the available CPU, remember to update the thread pool size in PhixFlow. Unless advised otherwise by PhixFlow Support or your PhixFlow implementation team, set this to 2 times the logical (virtual) CPUs. You update this setting in PhixFlow’s System Configuration.