Is This Content Helpful?
We're glad to know this article was helpful.
Linux users of the ArcGIS GeoEvent Extension for Server have reported that the maximum throughput speed on some operating systems is significantly lower than those of Windows deployments using the same product release and GeoEvent configuration.
The difference in these rates can be attributed to the default performance tuning configuration within the operating systems of Red Hat Enterprise Linux (RHEL) 6, CentOS 6, as well as Ubuntu 14.04/16.04 and the openSuSE releases. By default when initially deployed, these Linux distributions are preconfigured for a power-saving balance of CPU, memory, and network resource usage. Unfortunately when working with higher velocity real-time data, these settings can drastically limit the number of events per second that can be processed by the GeoEvent Extension.
To increase the performance on these operating systems, change the default tuning setting to the recommendations below:
Note: Please note that it is highly recommended that if deployed in a virtual environment, that an image be taken prior to making any changes and if at all possible, to first implement these changes in a Development/Test environment prior to modifying any Production deployments.
[root@server ~]# yum install tuned
[root@server ~]# tuned-adm list Available profiles: - desktop-powersave - spindown-disk - default - laptop-ac-powersave - laptop-battery-powersave - server-powersave - throughput-performance - latency-performance - enterprise-storage - virtual-guest - virtual-host Current active profile: default
[root@server ~]# tuned-adm profile virtual-guestThese settings are applied immediately, and are saved as the new system configuration. With the RHEL7 and CentOS7 operating systems, these profiles are automatically set to virtual-guest by default, but can be further tuned as needed. For additional documentation on the tuned utility, see the Related Information section below.
username@server:~$ vi /etc/sysctl.conf kernel.sched_min_granularity_ns = 10000000 kernel.sched_wakeup_granularity_ns = 15000000 vm.swappiness = 30 vm.dirty_ratio = 40Once saved, reload the sysctl.conf to apply the changes.
username@server:~$ sysctl -p