Розробка Parachains On-Demand (також відомих як Parathreads) розпочато! Багато людей вже чекають на запуск паралельних потоків. У цій статті буде розказано, що таке паралельний потік? Як парапотоки отримують право створювати блоки? І процес перевірки колектора і т.д.
Парачейни на вимогу є першим варіантом більш динамічного способу отримання блокового простору. Існуючі парачейни забезпечують дуже статичний спосіб придбання блокового простору, тобто виграти аукціон і мати гарантований блоковий простір, доступний протягом тривалого періоду часу, наприклад року. Наразі парачейн створює блок кожні 12 секунд протягом усього періоду. Ця гарантія регулярного створення блоків справді потрібна деяким додаткам/ланцюжкам, і це одна з характеристик, які роблять парачейни кращими за смарт-контракти.
Але з іншого боку, з точки зору мережі, це надто важко для деяких додатків, і їх перетворення на парачейн призведе до великої витрати ресурсів. З точки зору користувача, перемога на аукціоні є відносно високою перешкодою для входу, що ускладнює приєднання нових проектів та ідей до мережі. За допомогою парачейнів на вимогу ми одночасно знижуємо цей бар’єр і відкриваємо мережу для менш ресурсомістких програм більш ефективним способом.
Отже, як це працює? Замість того, щоб планувати генерацію блоку кожні 12 секунд, парачейн на вимогу, за потреби, сортувальник замовляє ядро (можливість генерації блоку) і надсилає спеціальне генерування блоку до ланцюга ретрансляції Polkadot. ядро для свого ParaId і включає максимальну ціну, яку вони готові заплатити.
Замовити Core
Час виконання ланцюга ретрансляції обчислить поточну найкращу ціну ядра. Якщо найвища ціна нового замовлення дорівнює або вища, а на рахунку достатньо коштів, тоді з неї буде стягнено плату відповідно до поточної найкращої ціни та незабаром Виробник блоку організовує повноваження блоку. Ця ціна розраховується ланцюгом реле на основі поточного попиту. Він базується на тому ж механізмі, що й збори, щоб повільно реагувати на попит і уникнути різких коливань цін.
Співзасновник Polkadot Роберт доповнив це запитання, пояснивши, що в механізмі виплати комісії в Parathreads незалежно від того, яку найвищу ціну готовий заплатити учасник торгів, комісія сплачується однаково. Коли попит на парачейни на вимогу високий, ціна ядра повільно зростатиме в автоматичному режимі.
У цій ситуації може виникнути проблема «MEV», яка стосується додаткового доходу, який майнери або валідатори можуть отримати, маніпулюючи порядком транзакцій або включеними транзакціями. Наприклад, валідатори можуть відстрочити обробку замовлень із вищими ставками, щоб вони могли отримати або спалити більше комісій. Але «смертна зовнішність» Полкадота обмежує цю можливість. «Смертельні зовнішні елементи» — це транзакції з життєвим циклом, що означає, що ці транзакції не чекатимуть вічно на обробку, а будуть автоматично відкидані через певний період часу, таким чином обмежуючи робочий простір валідатора.
Щоб парапотоки використовували існуючі механізми безпеки під час запиту дозволу на блокування, транзакція (зовнішня), яку вони надсилають із запитом на дозвіл на блокування, має бути підписана. «Підписаний зовнішній» означає, що обліковий запис, який відправив транзакцію, підписав транзакцію своїм власним закритим ключем. Це призначено для того, щоб запобігти надсиланню транзакцій, які видають себе за обліковий запис, оскільки ніхто, крім власника облікового запису, не може створити підпис, який відповідає відкритому ключу облікового запису. Таким чином, коли ланцюжок ретрансляції отримує підписану транзакцію, він може підтвердити, що транзакцію дійсно надіслав той, хто за себе видає.
Крім того, підписані транзакції також можуть містити деяку додаткову інформацію, таку як nonce (використовується для запобігання повторним атакам) і tip (використовується для підказки постачальнику блоку). Ланцюжок ретрансляції вже має механізм для обробки цієї інформації, тому використання підписаних транзакцій у блокових запитах парачейнів, керованих попитом, дозволяє їм безпосередньо використовувати ці існуючі механізми без необхідності розробляти нові механізми безпеки.
З точки зору користувача це означає, що загальна комісія, яку потрібно сплатити, складається з трьох частин: традиційної комісії за транзакцію (яка використовується для оплати обчислювальних ресурсів, необхідних для обробки транзакції), додаткової комісії за підказки (це використовується щоб заохотити виробників блоків визначати пріоритетність своїх транзакцій), а також згадану вище основну ціну підписки (тобто ціна блокової потужності).
Інтегруйте механізм замовлення у вузол збирача
Фактичний процес створення блоку точно такий же, як для валідаторів (колаторів), так і для статичних парачейнів. Collators — вузли, що відповідають за збір і створення блоків. Вони регулярно перевіряють статус парачейнів, особливо парачейнів, за які вони відповідають (ідентифікуються ParaId). Якщо вони виявляють, що парачейн, який відповідає їх ParaId, ось-ось досягне часу для створення блоку, вони почнуть генерувати новий блок. Після генерації блоку їм потрібно створити доказ (Proof of Validity, відомий як PoV), який містить вміст блоку та інформацію, що підтверджує дійсність блоку. Потім вони надішлють це підтвердження PoV до призначеної групи підтримки (група підтримки). Група підтвердження — це група вузлів, відповідальних за перевірку та підтвердження достовірності цього блоку.
Хоча процес генерації блоків у парачейні на вимогу такий самий, як і в статичному парачейні, у парачейні на вимогу нам потрібно запровадити новий механізм у системах зіставлення (Collators), щоб вони могли під час надсилання запитів на блокування можливості генерації (тобто «основні замовлення»).
Наразі існує кілька можливих стратегій щодо розробки цього нового механізму (якщо вас цікавить ця проблема або якщо ви маєте певні знання про Cumulus, заглиблення в цю проблему стане гарним способом взяти участь у цьому проекті та допомогти з вимагати швидшого впровадження парачейнів.
Cumulus — це фреймворк розробки для створення парачейнів у мережах Polkadot і Kusama. Його розробила компанія Parity Technologies, головний розробник Polkadot. Cumulus полегшує розробникам створення Parachains. Коли ви використовуєте Cumulus для побудови парачейну, ви можете скористатися деякою спільною логікою та функціями, уже реалізованими в Cumulus, такими як зв’язок із ланцюгом ретрансляції, перевірка блоків і обробка остаточності. Це дозволяє розробникам зосередитися на своїй бізнес-логіці, не вирішуючи проблеми низького рівня.
Загалом мета Cumulus — максимально спростити створення парачейнів, щоб сприяти розвитку екології Polkadot і Kusama.
Інше важливе нагадування полягає в тому, що може виникнути загроза безпеці, якщо сортувальник працює з гарячого гаманця (гаманця, підключеного до мережі). Таким чином, ми надамо спеціальний тип проксі-облікового запису, який має лише основні права призначення ставок у парачейні на вимогу, тим самим зменшуючи ризики безпеки.
інтегрована підтримка асинхронізації та додаткові відомості
Для більш зацікавленої технічної аудиторії тут відстежується повний розвиток парачейну на вимогу.
Підзавдання можна знайти тут (спеціально для майбутньої інтеграції асинхронної підтримки, деякі роздуми підсумовані в цьому коментарі (.
Коротше кажучи, існуюча основна абстракція більше не буде 0-вимірною, а одновимірною. Це може означати, що спосіб роботи системи або моделі стане більш гнучким або складним, що дозволить цим «ядрам» або іншим частинам системи заздалегідь знати або передбачати завдання чи події, які відбудуться в майбутньому. Це може бути оптимізація або вдосконалення, яке робить загальну систему здатнішою передбачати та обробляти майбутню діяльність.
У Polkadot «ядро» — це спеціальний вузол, відповідальний за обробку та перевірку транзакцій та інших дій у парачейнах, а «абстракція ядра» зазвичай відноситься до дизайну, в якому деякі складні внутрішні механізми або деталі реалізації абстраговані, приховані під простим інтерфейсом або концепція.
Але поки досить подробиць. Ми дуже раді новим можливостям, які принесуть парачейни на вимогу, і не можемо дочекатися їх запуску!
Посилання на вміст:
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
Розробка парапотоку Polkadot почала розуміти, як це працює
Компіляція: PolkaWorld
Розробка Parachains On-Demand (також відомих як Parathreads) розпочато! Багато людей вже чекають на запуск паралельних потоків. У цій статті буде розказано, що таке паралельний потік? Як парапотоки отримують право створювати блоки? І процес перевірки колектора і т.д.
Парачейни на вимогу є першим варіантом більш динамічного способу отримання блокового простору. Існуючі парачейни забезпечують дуже статичний спосіб придбання блокового простору, тобто виграти аукціон і мати гарантований блоковий простір, доступний протягом тривалого періоду часу, наприклад року. Наразі парачейн створює блок кожні 12 секунд протягом усього періоду. Ця гарантія регулярного створення блоків справді потрібна деяким додаткам/ланцюжкам, і це одна з характеристик, які роблять парачейни кращими за смарт-контракти.
Але з іншого боку, з точки зору мережі, це надто важко для деяких додатків, і їх перетворення на парачейн призведе до великої витрати ресурсів. З точки зору користувача, перемога на аукціоні є відносно високою перешкодою для входу, що ускладнює приєднання нових проектів та ідей до мережі. За допомогою парачейнів на вимогу ми одночасно знижуємо цей бар’єр і відкриваємо мережу для менш ресурсомістких програм більш ефективним способом.
Отже, як це працює? Замість того, щоб планувати генерацію блоку кожні 12 секунд, парачейн на вимогу, за потреби, сортувальник замовляє ядро (можливість генерації блоку) і надсилає спеціальне генерування блоку до ланцюга ретрансляції Polkadot. ядро для свого ParaId і включає максимальну ціну, яку вони готові заплатити.
Замовити Core
Час виконання ланцюга ретрансляції обчислить поточну найкращу ціну ядра. Якщо найвища ціна нового замовлення дорівнює або вища, а на рахунку достатньо коштів, тоді з неї буде стягнено плату відповідно до поточної найкращої ціни та незабаром Виробник блоку організовує повноваження блоку. Ця ціна розраховується ланцюгом реле на основі поточного попиту. Він базується на тому ж механізмі, що й збори, щоб повільно реагувати на попит і уникнути різких коливань цін.
Співзасновник Polkadot Роберт доповнив це запитання, пояснивши, що в механізмі виплати комісії в Parathreads незалежно від того, яку найвищу ціну готовий заплатити учасник торгів, комісія сплачується однаково. Коли попит на парачейни на вимогу високий, ціна ядра повільно зростатиме в автоматичному режимі.
У цій ситуації може виникнути проблема «MEV», яка стосується додаткового доходу, який майнери або валідатори можуть отримати, маніпулюючи порядком транзакцій або включеними транзакціями. Наприклад, валідатори можуть відстрочити обробку замовлень із вищими ставками, щоб вони могли отримати або спалити більше комісій. Але «смертна зовнішність» Полкадота обмежує цю можливість. «Смертельні зовнішні елементи» — це транзакції з життєвим циклом, що означає, що ці транзакції не чекатимуть вічно на обробку, а будуть автоматично відкидані через певний період часу, таким чином обмежуючи робочий простір валідатора.
Щоб парапотоки використовували існуючі механізми безпеки під час запиту дозволу на блокування, транзакція (зовнішня), яку вони надсилають із запитом на дозвіл на блокування, має бути підписана. «Підписаний зовнішній» означає, що обліковий запис, який відправив транзакцію, підписав транзакцію своїм власним закритим ключем. Це призначено для того, щоб запобігти надсиланню транзакцій, які видають себе за обліковий запис, оскільки ніхто, крім власника облікового запису, не може створити підпис, який відповідає відкритому ключу облікового запису. Таким чином, коли ланцюжок ретрансляції отримує підписану транзакцію, він може підтвердити, що транзакцію дійсно надіслав той, хто за себе видає.
Крім того, підписані транзакції також можуть містити деяку додаткову інформацію, таку як nonce (використовується для запобігання повторним атакам) і tip (використовується для підказки постачальнику блоку). Ланцюжок ретрансляції вже має механізм для обробки цієї інформації, тому використання підписаних транзакцій у блокових запитах парачейнів, керованих попитом, дозволяє їм безпосередньо використовувати ці існуючі механізми без необхідності розробляти нові механізми безпеки.
З точки зору користувача це означає, що загальна комісія, яку потрібно сплатити, складається з трьох частин: традиційної комісії за транзакцію (яка використовується для оплати обчислювальних ресурсів, необхідних для обробки транзакції), додаткової комісії за підказки (це використовується щоб заохотити виробників блоків визначати пріоритетність своїх транзакцій), а також згадану вище основну ціну підписки (тобто ціна блокової потужності).
Інтегруйте механізм замовлення у вузол збирача
Фактичний процес створення блоку точно такий же, як для валідаторів (колаторів), так і для статичних парачейнів. Collators — вузли, що відповідають за збір і створення блоків. Вони регулярно перевіряють статус парачейнів, особливо парачейнів, за які вони відповідають (ідентифікуються ParaId). Якщо вони виявляють, що парачейн, який відповідає їх ParaId, ось-ось досягне часу для створення блоку, вони почнуть генерувати новий блок. Після генерації блоку їм потрібно створити доказ (Proof of Validity, відомий як PoV), який містить вміст блоку та інформацію, що підтверджує дійсність блоку. Потім вони надішлють це підтвердження PoV до призначеної групи підтримки (група підтримки). Група підтвердження — це група вузлів, відповідальних за перевірку та підтвердження достовірності цього блоку.
Хоча процес генерації блоків у парачейні на вимогу такий самий, як і в статичному парачейні, у парачейні на вимогу нам потрібно запровадити новий механізм у системах зіставлення (Collators), щоб вони могли під час надсилання запитів на блокування можливості генерації (тобто «основні замовлення»).
Наразі існує кілька можливих стратегій щодо розробки цього нового механізму (якщо вас цікавить ця проблема або якщо ви маєте певні знання про Cumulus, заглиблення в цю проблему стане гарним способом взяти участь у цьому проекті та допомогти з вимагати швидшого впровадження парачейнів.
Cumulus — це фреймворк розробки для створення парачейнів у мережах Polkadot і Kusama. Його розробила компанія Parity Technologies, головний розробник Polkadot. Cumulus полегшує розробникам створення Parachains. Коли ви використовуєте Cumulus для побудови парачейну, ви можете скористатися деякою спільною логікою та функціями, уже реалізованими в Cumulus, такими як зв’язок із ланцюгом ретрансляції, перевірка блоків і обробка остаточності. Це дозволяє розробникам зосередитися на своїй бізнес-логіці, не вирішуючи проблеми низького рівня.
Загалом мета Cumulus — максимально спростити створення парачейнів, щоб сприяти розвитку екології Polkadot і Kusama.
Інше важливе нагадування полягає в тому, що може виникнути загроза безпеці, якщо сортувальник працює з гарячого гаманця (гаманця, підключеного до мережі). Таким чином, ми надамо спеціальний тип проксі-облікового запису, який має лише основні права призначення ставок у парачейні на вимогу, тим самим зменшуючи ризики безпеки.
інтегрована підтримка асинхронізації та додаткові відомості
Для більш зацікавленої технічної аудиторії тут відстежується повний розвиток парачейну на вимогу.
Підзавдання можна знайти тут (спеціально для майбутньої інтеграції асинхронної підтримки, деякі роздуми підсумовані в цьому коментарі (.
Коротше кажучи, існуюча основна абстракція більше не буде 0-вимірною, а одновимірною. Це може означати, що спосіб роботи системи або моделі стане більш гнучким або складним, що дозволить цим «ядрам» або іншим частинам системи заздалегідь знати або передбачати завдання чи події, які відбудуться в майбутньому. Це може бути оптимізація або вдосконалення, яке робить загальну систему здатнішою передбачати та обробляти майбутню діяльність.
У Polkadot «ядро» — це спеціальний вузол, відповідальний за обробку та перевірку транзакцій та інших дій у парачейнах, а «абстракція ядра» зазвичай відноситься до дизайну, в якому деякі складні внутрішні механізми або деталі реалізації абстраговані, приховані під простим інтерфейсом або концепція.
Але поки досить подробиць. Ми дуже раді новим можливостям, які принесуть парачейни на вимогу, і не можемо дочекатися їх запуску!
Посилання на вміст: