Runtime Interaction Reference
Riak’s configuration files provide a variety of parameters that enable you to fine-tune how Riak interacts with two important elements of the underlying operating system: distribution ports and OS processes/garbage collection.
Ports
Distribution ports connect Riak nodes within a cluster. The following port-related parameters are available:
runtime_health.triggers.distribution_port
— Whether distribution ports with full input buffers will be counted as busy.- Default:
on
- Default:
runtime_health.triggers.port
— Whether ports with full input buffers will be counted as busy. Ports can represent open files or network sockets.- Default:
on
- Default:
runtime_health.thresholds.busy_ports
— The threshold at which a warning will be triggered about the number of ports that are overly busy. Ports with full input buffers count toward this threshold.- Default:
2
- Default:
Processes
Riak will log warnings related to busy operating system processes and garbage collection. You can specify the conditions in which warnings are triggered using the following parameters:
runtime_health.thresholds.busy_processes
— The threshold at which a warning will be triggered about the number of processes that are overly busy. Processes with large heaps or that take a long time to garbage collect will count toward this threshold.- Default:
30
- Default:
runtime_health.triggers.process.heap_size
— A process will be marked as busy when its size exceeds this size (in bytes).- Default:
160444000
- Default:
runtime_health.triggers.process.garbage_collection
— A process will be marked as busy when it exceeds this amount of time doing garbage collection. Enabling this setting can cause performance problems on multi-core systems.- Default:
off
- Example when enabled:
50ms
- Default:
runtime_health.triggers.process.long_schedule
— A process will become busy when it exceeds this length of time during a single process scheduling and execution cycle.- Default:
off
- Example when enabled:
20ms
- Default: