Скорость транзакции субстрата в секунду

Привет, ребята, у меня вопрос, связанный с производительностью. Я использую 2 экземпляра aws (t2.2xlarge) с хранилищем 30 ГБ. Я использую узел v2.0 (несколько дней назад отделенный от мастера) на каждом с настройкой по умолчанию, и я проверяю, сколько транзакций в секунду я могу обработать.

Отправка 495 (чуть меньше 500 по умолчанию) транзакций перевода баланса в среднем составляет около 22 транзакций в секунду. Ожидается ли это?

Я попытался запустить тот же тест локально (Dell XPS с хранилищем 1T и процессором I7) с двумя экземплярами (как с узлом-шаблоном, так и с узлом), и самый высокий средний TPS, который я видел, составляет 35. Могу ли я что-нибудь сделать, чтобы улучшить это?

Спасибо

1 ответ

Решение

Транзакций в секунду = транзакций на блок * блоков в секунду.

Количество блоков в секунду можно напрямую настроить в узле субстрата по умолчанию, изменив параметр MILLISECS_PER_BLOCKконстанта здесь или в шаблоне узла здесь.

Транзакции на блок немного мягче, потому что ограничения не на количество транзакций, а на общий размер транзакций и общий вес транзакций. Оба эти свойства можно настроить в параметре конфигурации системного поддона (например, здесь, в шаблоне узла). Вы можете узнать больше об этих параметрах в концептуальном документе о весах транзакций.

После того, как вы настроите эти параметры так, чтобы ваша пропускная способность больше не была искусственно ограничена, вы можете начать экспериментировать, чтобы увидеть, что достижимо в условиях вашей целевой сети. Что касается ожидаемых результатов, я не совсем уверен, но с нетерпением жду возможности услышать об эксперименте.

Другие вопросы по тегам