This post is part of the Analytics tuning series. see Analytics Performance
Intro
There are two major factors at the machine level that have a huge impact on the performance.
- Memory
- Disk
Although there is some benefit from CPU core available, I find that CPU usage is not that high.
Making the maximum amount of Memory is crucial. I have seen some blogs report of using 1TB of memory! The reason you need memory is to allocate enough to the java machines that run weblogic and javahosts, as well as being able to utilise RAMDisk (tmpfs type).
For setting up tmpfs please see the blogs below, and I will show the settings that can use the tmp area in the sections below.
Create a RAM disk in Linux | JamesCoyle.net Limited
How to Create a Ramdisk in Linux (linuxhint.com)
How to Create a TMPFS File System (System Administration Guide: Basic Administration) (oracle.com)
Analytics Tuning
The tuning guide mentions some options you should implement:
Set tcp_fin_timeout to 30 (down from 60) – see Configuring FIN_WAIT_2 timeout on Linux (oracle.com)
Increase Kernel Entropy to deal with the every slow loading of the weblogic domain
Optimize TCP Parameter Settings. for example
To set the net.core.rmem_max
parameter, you can use the sysctl
command. To get the current value of the parameter, run the following command in your terminal: /sbin/sysctl net.core.rmem_max
To set a new value for net.core.rmem_max, run the following command in your terminal:
/sbin/sysctl -w net.core.rmem_max=<new_value>
Replace <new_value> with the desired value for net.core.rmem_max. The range of valid values is 0 to 2147483647.
The above was taken from a bing chat answer!!
Linux ulimit
As part of the installation process hopefully you have set the ulimits that you prefer. I don’t think there are any prescribed it the install documentation, so you need to pick your own. The tuning guide suggests:
* soft nofile 131072
* hard nofile 131072
* soft nproc 131072
* hard nproc 131072