Многие люди смотрят на протоколы хранения, фокусируясь только на пропускной способности и задержках. Но я считаю, что истинная суть, которую все неправильно понимают — это не показатели производительности, а наличие или отсутствие возможности для дальнейших изменений.
На ранних этапах проекты обычно так и делают: сначала запускают, а потом уже оптимизируют, главное — чтобы работало, а проблемы решат позже. Звучит логично, но как только ваша пользовательская база, объем активов и контента начинают расти как снежный ком, вы попадете в затруднительное положение.
Почему? Потому что вы просто не можете ничего изменить. Хотите изменить структуру данных? Не выйдет, это разрушит всю цепочку доверия. Нужно перерабатывать ядро логики? Еще опаснее, риск слишком велик. Хотите очистить устаревшие данные? Это еще больший кошмар — затронет всё и сразу.
Здесь возникает ключевое отличие в дизайне. Традиционный подход — объект перезаписывается: новое состояние затирает старое. А некоторые протоколы предполагают эволюцию объектов — новое состояние строится на основе предыдущего, образуя цепочку версий.
Это кажется технической деталью, но на самом деле кардинально меняет способ управления жизненным циклом проекта. Например, приложение с 5 обновлениями состояния в день — за год это 1800 версий. Большинство системных фреймворков начинают за 200 изменений сталкиваться с застоем структуры и ухудшением производительности. Но если бы система изначально проектировалась под такую высокочастотную эволюцию, результат был бы совершенно другим.
Поэтому я считаю, что такие схемы хранения данных вовсе не предназначены для новых проектов, а скорее для тех, кто планирует долгосрочную стратегию и нуждается в гибкости по мере роста пользователей и активов.
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
19 Лайков
Награда
19
9
Репост
Поделиться
комментарий
0/400
GasWhisperer
· 01-10 08:52
Йо, это действительно важное дело... все зациклены на числах TPS, но полностью пропускают точку перегиба, когда ваша система просто... зависает. Честно говоря, видел это сотни раз в паттернах мемпула.
Посмотреть ОригиналОтветить0
blockBoy
· 01-10 05:12
Разобравшись в этом долгое время, всё равно остаётся та же проблема "нельзя изменить в будущем", действительно все сталкивались с этим в web3
---
Интересно, что цепочка версий скорее оставляет проекту запасной ход
---
Говорить нечего, в ранней стадии все, кто пошёл на all in, пожалели об этом
---
Тянет за собой всё... разве не такова ситуация у большинства цепочек сейчас?
---
Итак, в конечном итоге всё зависит от выбора архитектуры на начальном этапе, тут нет секретов
---
Если следовать этой логике, то многие публичные блокчейны изначально были выбраны неправильно
---
Сравнение высокой скорости эволюции и структурной жесткости действительно попадает в точку
---
Долгосрочный путь против быстрого обновления, как рыба и мясо
---
Значит, для новых проектов лучше не смотреть на этот план
---
Кажется, именно это и есть настоящая проблема инфраструктуры web3, а не TPS
Посмотреть ОригиналОтветить0
FOMOrektGuy
· 01-08 19:53
Совершенно верно, многие проекты погибли под грузом исторического багажа, и уже поздно жалеть
---
200 исправлений — это застывание? Тогда многие L1 уже должны были умереть
---
Главное — уметь понять, можете ли вы терпеть изменения, большинство не могут
---
Разница между эволюционной цепочкой и покрытием действительно огромна, я раньше не думал об этом
---
Только долгосрочное мышление позволяет оценить качество дизайна, в краткосрочной перспективе этого не понять
---
Неудивительно, что некоторые проекты становятся всё более медленными, оказывается, что в стадии проектирования уже были заложены проблемы
---
Вот почему важно выбрать правильную архитектуру на ранних этапах, иначе последующие изменения станут кошмаром
Посмотреть ОригиналОтветить0
metaverse_hermit
· 01-08 19:52
Oof, вот это да, это настоящая суть, все метрики производительности — это просто внешний лоск
---
Неудивительно, что столько проектов застревают на поздних стадиях, яму вырыли уже в начале
---
Версионная цепь — это действительно гениально, это не просто задача оптимизации производительности
---
Поэтому нужно на этапе проектирования продумать будущее пространство для расширения
---
200 модификаций и уже окостенело? Эти цифры ранят, сколько проектов уже мертво
---
Только проекты с долгосрочным видением смогут действительно использовать такой подход
---
Опираясь на эволюцию традиционных баз данных, web3 наконец разобрался в этом
---
Быстрые итерации в начале приносят удовольствие, но потом не получается ничего менять, и теперь столько блокчейнов испытывают муки
Посмотреть ОригиналОтветить0
SandwichTrader
· 01-08 19:48
Сначала все хотели быстро итеративно развиваться, а потом поняли, что самое жесткое — это заблокировать себя.
Посмотреть ОригиналОтветить0
rugged_again
· 01-08 19:46
Совершенно верно, многие команды просто застряли в этой ловушке
200 изменений и начинают застывать? Я видел еще более жесткие случаи, когда команда просто умирала на месте
Это и есть настоящий долгосрочный подход, а не просто слова
Выбор архитектуры действительно решает жизнь или смерть, показатели производительности — лишь внешняя сторона
Идея цепочки версий, о которой давно должны были подумать
Если за год 1800 обновлений — это еще живы и бодры, значит, это действительно дизайн
Ранняя установка «главное — чтобы работало» — это только долг, остальное — долги
Посмотреть ОригиналОтветить0
WenAirdrop
· 01-08 19:30
Теперь понятно, в ранние годы закладывал яму, а в итоге сам в нее прыгнул
Посмотреть ОригиналОтветить0
MemeCurator
· 01-08 19:26
Сначала все хотели быстро запуститься, а потом поняли, что изменить уже нельзя... Вот это и есть убийственный дизайн-недостаток
Многие люди смотрят на протоколы хранения, фокусируясь только на пропускной способности и задержках. Но я считаю, что истинная суть, которую все неправильно понимают — это не показатели производительности, а наличие или отсутствие возможности для дальнейших изменений.
На ранних этапах проекты обычно так и делают: сначала запускают, а потом уже оптимизируют, главное — чтобы работало, а проблемы решат позже. Звучит логично, но как только ваша пользовательская база, объем активов и контента начинают расти как снежный ком, вы попадете в затруднительное положение.
Почему? Потому что вы просто не можете ничего изменить. Хотите изменить структуру данных? Не выйдет, это разрушит всю цепочку доверия. Нужно перерабатывать ядро логики? Еще опаснее, риск слишком велик. Хотите очистить устаревшие данные? Это еще больший кошмар — затронет всё и сразу.
Здесь возникает ключевое отличие в дизайне. Традиционный подход — объект перезаписывается: новое состояние затирает старое. А некоторые протоколы предполагают эволюцию объектов — новое состояние строится на основе предыдущего, образуя цепочку версий.
Это кажется технической деталью, но на самом деле кардинально меняет способ управления жизненным циклом проекта. Например, приложение с 5 обновлениями состояния в день — за год это 1800 версий. Большинство системных фреймворков начинают за 200 изменений сталкиваться с застоем структуры и ухудшением производительности. Но если бы система изначально проектировалась под такую высокочастотную эволюцию, результат был бы совершенно другим.
Поэтому я считаю, что такие схемы хранения данных вовсе не предназначены для новых проектов, а скорее для тех, кто планирует долгосрочную стратегию и нуждается в гибкости по мере роста пользователей и активов.