Cardano Leios добавляет кэш транзакций и ограничения на загрузки

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

By SongMarketCap

Updated:

Cardano News - Cardano Leios добавляет кэш транзакций и ограничения на загрузки

Команда консенсуса Cardano обновила прототип Leios новыми контролями загрузок, кэшированием транзакций и мерами защиты выпуска блоков. Изменения активны в Leios devnet, где разработчики могут измерять их влияние на нагрузку на пиры, использование памяти и временные характеристики узлов.

Leios это предлагаемое обновление консенсуса Cardano, созданное для увеличения пропускной способности путем разделения частей обработки транзакций при сохранении охранной роли Ouroboros Praos.

Новая логика загрузок управляет трафиком Leios

Согласно обновлению команды консенсуса от 8 сентября, разработчики переписали логику, которая определяет, какие данные Leios загружает узел и какой пир их предоставляет.

Теперь узлы ограничивают и время, затрачиваемое на каждое решение о загрузке, и память, резервируемую под ожидающие запросы. Самые новые Endorser Blocks получают приоритет, а запросы на отсутствующие транзакции распределяются случайным образом, чтобы одновременные загрузки не исчерпывали одни и те же лимиты пира.

Эти ограничения позволяют devnet тестировать более крупные потоки данных Leios в пределах заданных ограничений по времени и по памяти.

Кэш транзакций предотвращает повторные загрузки

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

Endorser Blocks ссылаются на транзакции, которые узлы должны найти и проверить. Повторное использование локально доступных данных снижает дублирующий сетевой трафик и объем работы, необходимый для реконструкции соответствующего набора транзакций.

Это изменение уровня узла. Кошельки и децентрализованные приложения продолжают отправлять транзакции ADA через существующие интерфейсы Cardano.

Leios защищает синхронизацию и выпуск блоков

Команда также устранила еще одну причину нежелательных разрывов соединения между корректно работающими узлами. Узел, синхронизирующийся с более старой позиции цепи, может быть не в состоянии валидировать более новые сообщения Leios. Теперь он ставит такие запросы на паузу до тех пор, пока его вершина цепи не догонит, вместо того чтобы запрашивать данные и отклонять ответы.

Разработчики также ограничили, сколько времени mempool может тратить на чтение состояния реестра с диска. Это предотвращает задержку блока производителя из-за доступа к диску сверх его выделенного слота.

Трассировка для выпуска блоков и выбора цепи была расширена, при этом панель Leios теперь показывает, где прототипный узел тратит время обработки. Эти изменения в наблюдаемости интегрированы в узел devnet.

Изменения остаются в пределах прототипа, поэтому Cardano mainnet и текущая обработка транзакций ADA не изменены. Следующие тесты devnet могут сосредоточиться на том, остаются ли нагрузка на пиры, задержка диска и тайминг выпуска блоков в пределах новых ограничений.