Секвенсор — компонент, определяющий порядок транзакций в системах вроде роллапов второго уровня. Он получает транзакции и располагает их для исполнения в блоках роллапа. Порядок важен: обмен, ликвидация или другое взаимодействие с контрактом может дать разные результаты в зависимости от того, какая транзакция выполняется первой.
Часть общей обработки
Секвенсор может быстро сообщить, что транзакция вошла в предложенную последовательность. Это сообщение не означает автоматически окончательный расчёт в базовом блокчейне.
Исполнение, публикация пакетов и обязательства относительно состояния — связанные задачи, которые могут выполнять разные компоненты. Например, в OP Stack отдельный компонент batcher сжимает данные транзакций и публикует их в Ethereum. Разграничение ролей помогает не приписывать секвенсору единоличное доказательство каждого изменения состояния или обеспечение доступности данных.
Доступность и влияние на порядок
Одни системы используют единственный активный секвенсор, другие распределяют обязанности. Концентрация контроля может упростить координацию, но создаёт риски сбоев, цензуры и манипуляции порядком, включая возможности извлекать из него стоимость.
Некоторые роллапы предусматривают альтернативный путь через базовую цепь, если секвенсор недоступен или исключает транзакции. Условия, стоимость и задержки зависят от протокола. Нельзя считать, что такой путь обязательно обеспечивает немедленное включение транзакций или мгновенный вывод средств.