Установка и использование платформы

Тонкая настройка платформы: настройка инструментов gRPC и REST API ноды

Параметры работы gRPC и REST API для каждой ноды находятся в секции api конфигурационного файла:

api {
  rest {
    # Enable/disable REST API
    enable = yes

    # Network address to bind to
    bind-address = "0.0.0.0"

    # Port to listen to REST API requests
    port = 6862

    # Enable/disable TLS for REST
    tls = no

    # Enable/disable CORS support
    cors = yes

    # Max number of transactions
    # returned by /transactions/address/{address}/limit/{limit}
    transactions-by-address-limit = 10000

    distribution-address-limit = 1000
  }

  grpc {
    # Enable/disable gRPC API
    enable = yes

    # Network address to bind to
    bind-address = "0.0.0.0"

    # Port to listen to gRPC API requests
    port = 6865

    # Enable/disable TLS for GRPC
    tls = no

    # Parameters for internal gRPC services. Recommended to be left as is.
    services {
            blockchain-events {
              max-connections = 5
              history-events-buffer {
                enable: false
                size-in-bytes: 50MB
              }
            }

            privacy-events {
              max-connections = 5
              history-events-buffer {
                enable: false
                size-in-bytes: 50MB
              }
            }

            contract-status-events {
              max-connections = 5
            }
          }
  }

Блок rest { }

Блок rest { } предназначен для настройки интерфейса REST API ноды. Он включает следующие параметры:

  • enable – активация опции REST API на ноде. Включение опции – yes, отключение – no.

  • bind-address – сетевой адрес ноды, на котором будет доступен REST API интерфейс.

  • port – порт прослушивания REST API запросов.

  • tls – включение/отключение TLS для REST API запросов. Включение – yes, отключение – no. Для включения требуется настройка TLS ноды.

    Примечание

    Протокол TLS недоступен в opensource версии платформы.

  • cors – поддержка кросс-доменных запросов к REST API. Включение опции – yes, отключение – no.

  • transactions-by-address-limit – максимальное количество транзакций, возвращаемых методом GET /transactions/address/{address}/limit/{limit}.

  • distribution-address-limit – максимальное количество адресов, указываемых в поле limit и возвращаемых методом GET ​/assets​/{assetId}​/distribution​/{height}​/limit​/{limit}.

Блок grpc { }

Блок grpc { } предназначен для настройки gRPC-инструментария ноды. Он включает следующие параметры:

  • enable – активация gRPC-интерфейса на ноде.

  • bind-address – сетевой адрес ноды, на котором будет доступен gRPC-интерфейс.

  • port – порт прослушивания gRPC запросов.

  • tls – включение/отключение TLS для gRPC запросов. Включение – yes, отключение – no. Для включения требуется настройка TLS ноды.

    Примечание

    Протокол TLS недоступен в opensource версии платформы.

Секция services{ } содержит настройки публичных gRPC-сервисов, собирающих данные из компонентов платформы:

  • blockchain-events – сервис сбора данных о событиях блокчейн-сети;

  • privacy-events – сервис сбора данных о событиях, связанных с группами доступа к конфиденциальным данным;

  • contract-status-events – сервис сбора данных о состоянии смарт-контрактов.

В этой секции рекомендуется использовать предустановленные параметры.