Tuning performance

This chapter describes performance related settings which might need to be added/changed depending on the system environment.

Memory Usage

This chapter describes configuration options related to the memory consumption of a connector service.

Hard limit

Description

  • Specifies the maximum commit size, in bytes, for the GC heap and GC bookkeeping.

  • This setting only applies to 64-bit computers.

  • This setting is ignored if the Per-object-heap limits are configured.

  • The default value, which only applies in certain cases, is the greater value of 20 MB or 75% of the memory limit on the container. The default value applies if:

How to activate

  • Open the installation folder for the Connector Service that you want to configure.

  • Open the Novacura.Connector.MyConnector.runtimeconfig.json in a proper text editor such as VSCode or Notepad++ (create the file if it does not exist, noting that "MyConnector" must be replaced with the actual connector name).

  • Locate "runtimeOptions" and add "System.GC.HeapHardLimit" to the "configProperties" array (note that the key-value pairs are comma separated).

{
   "runtimeOptions": {
      "configProperties": {
         "System.GC.Server": true,
         "System.GC.HeapHardLimit": 2097152000,
         "SomeOtherKey": "Comma separated key/value pairs above..."
      }
   }
}

1 Mebibyte (MiB) = 1 048 576 (2^20 = 1024^2) bytes. For example, to specify a heap hard limit of 2000 mebibytes (MiB), the value would be 2 097 152 000.

Percentage limit

Description

  • Specifies the allowable GC heap usage as a percentage of the total physical memory.

  • If System.GC.HeapHardLimit is also set, this setting is ignored.

  • This setting only applies to 64-bit computers.

  • If the Connector Service is running inside a container that has a specified memory limit, the percentage is calculated as a percentage of that memory limit.

  • This setting is ignored if the Per-object-heap limits are configured.

  • The default value, which only applies in certain cases, is the greater value of 20 MB or 75% of the memory limit on the container. The default value applies if:

    • The Connector Service is running inside a container that has a specified memory limit.

How to activate

  • Open the installation folder for the Connector Service that you want to configure.

  • Open the Novacura.Connector.MyConnector.runtimeconfig.json in a proper text editor such as VSCode or Notepad++ (create the file if it does not exist, noting that "MyConnector" must be replaced with the actual connector name).

  • Locate "runtimeOptions" and add "System.GC.HeapHardLimitPercent" to the "configProperties" array (note that the key-value pairs are comma separated).

{
   "runtimeOptions": {
      "configProperties": {
         "System.GC.Server": true,
         "System.GC.HeapHardLimitPercent": 30,
         "SomeOtherKey": "Comma separated key/value pairs above..."
      }
   }
}

For example, to limit the heap usage to 30%, the value would be 30.

Last updated