Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Disk space recommendations

Rationale

FIXEdge constantly generates big volumes of the logs. Long-term work could exhaust all disk space which would result in unstable application operation.It is recommended to monitor free disk space and set up optimal disk space usage scenarios.

FIXEdge should use a fast storage (e.g. SSD) for session logs to achieve maximum performance.

Info

Under article 25 of MiFIR and RTS 24 MiFID II, operators of trading venues will be required to collect and maintain for at least five years the relevant data relating to all orders in financial instruments which are advertised through their systems. Within the five-year period, competent authorities may request these records of orders and transactions maintained by investment firms and trading venues.  

For smart usage of disk space on fast storage, old data could be moved to a different place, e.g. to a network drive. FIXEdge configuration parameters allow configure configuring proper archiving and rotation strategy (see How to configure logging and logs rotation in FIXEdgefor more information).

...

The following items are to be considered for determining the required disk space:

  1. FIXEdge binaries and configuration (~1 GB)
  2. FIX session logs with FIX messages
    Depends on the maximum expected number of messages per day multiplied by the average size of messages.
  3. Application logs (tens - hundreds of MB per day):
    1. application status and errors
    2. sessions statuses changes
    3. validation errors
    4. monitoring notes
    Sessions and messages flow with issues and generate more logs than the issues-free flow. 
  4. Reserve extra space for core files (a few GB)

Additional items consuming space

...

  1. Database consumes the similar size as sessions logs but it depends on content to be stored.

    Info

    It is recommended to have the Database setup on another disk or on a different server to make your architecture less vulnerable to failures.

  2. Enabled debug or trace information could generate several times more logging (all above multiplied 3).
  3. Disabled archiving and cleaning up (all above multiplied 365 per year).
  4. Foreseen growth as per business operational plans.
    In fact, MiFID II states that a financial institution should be prepared for handling message messages twice bigger than as the biggest one seen in the previous 6 months (all above-multiplied x 2).

Example

For the solution:

  • 130 active sessions
  • 160 000 000 messages pass through the system per day
  • simple routing from one FIX session to another FIX session

Total space:

  • Daily sessions logs takes take up 70 GB
  • Application logs occupy 320 MB
  • DB occupy occupies 60 GB
Info
titleNote

For this example, daily sessions and application logs occupy about 8-10 GB after archiving.

Insufficient disk space mechanism

Info

The mechanism for handling insufficient disk space is available since FIXEdge 6.14.0 release.

The minimal amount of free disk space for the FIXEdge session start can be configured via Persistents.MinDiskSpace property in the engine.properties file. By default, the value of this property is set to 50 Mb.

On session creation or switching to backup/primary connection, FIXEdge C++ automatically checks free space on the disc and if its amount is less than the value of Persistents.MinDiskSpace property, then FIXEdge C++ does not start a new session or does not switch to backup/primary connection.

The following ERROR will be logged:

Code Block
There is no enough free disk space on "<log_path>" (<available_space> Mb) to create a FIX session.