Use the -wu option to limit the number of database worker threads that can simultaneously apply uploads to the consolidated
database. When the limit is reached, a database worker thread that is ready to apply its upload to the consolidated database
must wait until another finishes its upload.
The most common cause of contention in the consolidated database is having too many database worker threads applying uploads
simultaneously. Downloads usually cause far less contention, so they are limited only by the mlsrv12 -w option. For this reason,
the -w setting must be greater than or equal to the -wu setting.
By default, all database worker threads can apply uploads simultaneously. The number of database worker threads that are used
is set by the -w option. The default is 5.
If -wu is not specified, uploads may be applied concurrently on any or all database worker threads. If -wu is specified, uploads
are only applied concurrently on the specified number of database worker threads. This may temporarily increase contention
as the MobiLink server increases the number of database worker threads in an attempt to increase throughput. When this condition
is detected, the thread count is decreased.
Setting -wu is recommended in high-load environments where uploads are constantly intermixed with download-only synchronizations.
In a pilot setup using a LAN and remote databases on PCs, you find that the optimum number of database worker threads is approximately
10 for both upload-only and download-only synchronizations, and that corresponds to 100% CPU utilization on the consolidated
database. With fewer database worker threads you find that throughput is less and the CPU utilization for the consolidated
database is lower. With more database worker threads, throughput does not increase because the consolidated database is already
processing as fast as it can with 10 workers.