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

Обычно мы представляем проверки прав, происходящие по одной транзакции за раз.

Но реальность гораздо беспоряднее.

Крупные торговые системы часто отправляют несколько запросов одновременно с одной и той же смарт-учётной записи. Если механизм авторизации оценивает эти запросы параллельно, каждая транзакция может временно «видеть» тот же доступный лимит на списание до того, как блокчейн обновит состояние учётной записи.

Это создаёт инженерную проблему, известную как интерливинг прав.

Представьте, что Транзакция A одобрена, потому что у учётной записи ещё достаточно доступного лимита.

Проходит всего несколько миллисекунд — и Транзакция B тоже одобрена по той же причине.

Ни один запрос не знает, что другой уже зарезервировал часть этого лимита.

Результат не обязательно означает «сломанный» блокчейн.

Это состояние гонки внутри самого рабочего процесса авторизации.

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

Иногда самая сложная часть автоматизации — это не выполнение транзакций.

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

@NewtonProtocol #Newt #BinanceTurns9 #ZcashRises1190%OverPastYear #SKHynixSharesFallInSeoulAfterUSDebut #StrategySells3588BTCForDividends

$VELVET $DODO $NEWT

⚡ Если несколько автоматизированных транзакций приходят одновременно, что должно произойти сначала?
🔒 Lock the permissions
50%
⚖️ Check available balance
50%
🚀 Process everything together
0%
🤔 Not sure
0%
2 проголосовали • Голосование закрыто