Revision as of 13:29, May 30, 2018 by Olena (talk | contribs) (Update with the copy of version: 9.0DRAFT)
Jump to: navigation, search

Aeron Media Driver

Overview

The Aeron Media Driver is a separate process that provides buffers of data for Aeron to process from various transmission media. It decouples the means of data transmission from protocol processing.

Microservices require the driver to operate with Aeron. The Aeron Media Driver is not deployed as a separate package. It is included as a part of each microservice that have to work with the Aeron. Despite the fact that the driver is a part of each service, only one driver instance is required for each host.

The Aeron Media Driver consists of two files:

  1. Aeron Media Driver (aeron-driver.jar)
  2. Script to run the driver:
    On Windows: run-aeron-driver.bat
    On Linux: run-aeron-driver

The Aeron Media Driver is implemented in Java and requires Java version 1.8.0 or newer.

How to Run Aeron Media Driver

To run the Aeron Media Driver as a foreground process, use the script provided with the driver. The script provides the appropriate configuration for the driver. You can provide your own configuration via environment variables:

  • AERON_DIR
    The path to the directory where the Aeron Media Driver needs to store its files. On Linux, the directory inside /dev/shm/ is recommended. If you provide your own path, make it the same for the driver and any microservice that operates with this driver.
    If it is not specified then the default value provided by the Aeron is used.
  • AERON_SO_BUFFER
    The size in bytes of the send and receive socket buffers. The length of the buffer must be a power of two. On Linux, it must not exceed the kernel configuration parameters:
    • net.core.wmem_max
    • net.core.rmem_max
    The default value is 4194304.
  • AERON_TERM_BUFFER
    The size in bytes of the Term (a section of data within a stream) buffer. The length of the buffer must be a power of two and must be the same length on both ends.
    The default value is 67108864.
  • AERON_MTU
    The length of MTU in bytes.
    The default value is 65504.

Run as a Service

Create a separate systemd service configuration file for the Aeron Media Driver service.
For example, create systemd service configuration file /etc/systemd/system/pulse-aeron-media-driver.service with the following content:

[Unit]
Description=Pulse Aeron Media Driver

[Service]
ExecStart=/path/to/installation/run-aeron-driver

[Install]
WantedBy=multi-user.target

You can use systemctl(1) to manage these services. Type man systemctl for more information.

Comments or questions about this documentation? Contact us for support!