Шардчейн (Shardchain)
Под-блокчейн внутри workchain-а, который обрабатывает свою долю транзакций. TON автоматически делит и объединяет шарды в зависимости от нагрузки.
Синонимы: shardchain, шард, шардинг ton
Шардчейн — это сегмент workchain-а, отвечающий за подмножество адресов. Главная идея TON — горизонтальное масштабирование через автоматический шардинг: вместо того чтобы все транзакции ложились в одну цепь, они распределяются между сотнями параллельных шардов.
Как это работает
Каждый workchain делится по бинарному префиксу адреса. На старте в basechain один шард на весь диапазон. При росте нагрузки протокол расщепляет шард надвое: один обслуживает адреса с префиксом 0, другой — с префиксом 1. Если нагрузка падает, два соседних шарда автоматически сливаются обратно в один. Глубина дробления может достигать 60 уровней — это даёт до 2⁶⁰ параллельных шардов на один workchain.
Решение о расщеплении принимают валидаторы шарда на основе статистики занятости и размера блоков. Пользователю и разработчику не нужно ничего настраивать — шардинг полностью прозрачен.
Что даёт шардинг
- Параллелизм. Транзакции в разных шардах обрабатываются разными группами валидаторов одновременно. TPS сети складывается из TPS всех активных шардов.
- Изоляция нагрузки. Если в одном шарде идёт массовый минт NFT или хайповый листинг, остальные шарды это не замечают.
- Линейный рост ёмкости. В отличие от L1-сетей, где апгрейд пропускной способности требует хардфорка, TON масштабируется без изменений в коде.
Цена решения
Шардинг приносит асинхронность: если кошелёк в шарде A отправляет jetton кошельку в шарде B, сообщение идёт через очередь и доставляется в следующий блок шарда B. На практике это занимает 5-10 секунд на полный цикл, но разработчику нужно держать в голове, что мгновенного «commit + read» как в Ethereum-стиле не бывает.
Для пользователя это выглядит как 1-2 шага подтверждения в кошельке: первая транзакция уходит почти сразу, и спустя несколько секунд приходит финальный статус.
Связь с masterchain
В каждом блоке masterchain-а лежат хеши последних блоков всех активных шардов. Это позволяет любому шарду доказывать своё состояние через ссылку на masterchain — без этого механизма параллельные шарды не смогли бы договориться о глобальной картине сети.