~ Canister Smart Contract — це основний блок або важлива частина всього, що стосується обчислень і даних у межах Internet Computer Protocol.
Він визначає або проєктує, яким буде smart contract, переводячи smart contract із простого транзакційного або невеликого шматка коду в масштабований, як веб, контейнер програмного забезпечення( Велике сховище даних), який повністю працює на Blockchain.
Canister — це не просто код, а обчислювальний блок, який складається з двох важливих компонентів:
Перший — це
• Код: тобто WebAssembly (Wasm), який є частиною, що містить логіку застосунку. Wasm підтримує та дозволяє розробникам писати код на основних і найпопулярніших мовах програмування, таких як Rust, Typescript, а також motoko(, тобто власна мова програмування ICP.
Другий компонент —
• Стан )Data(: тобто пам’ять і сховище даних для застосунку. Саме тут зберігається вся інформація застосунку, причому автоматично та безпечно мережею відповідно до принципу ) Orthogonal Persistence(.
Тобто, це щось на зразок bundle чи контейнерів cloud computing з Web2, але які працюють на децентралізованій мережі, публічному Blockchain.
Canister має можливість розміщувати та обслуговувати повний стек web-застосунку, тобто frontend, backend і дані, і все це повністю On-chain.
Тепер давайте розглянемо основні 4 компоненти традиційного Blockchain App )Web3(, як вони працюють і як виглядатимуть у системі ICP Canister App.
Перший —
• Backend Logic, тобто бізнес-логіка, яка зазвичай працює на smart contract )EVM(. Але в системі ICP Canister App вона працюватиме всередині Canister )Wasm(.
Далі —
• Data Storage, яке є дуже дорогим, і більшість традиційних Blockchain App )Web3( покладаються на централізовані бази даних, такі як )AWS, Azure та Cloudflare(. Але в системі ICP Canister App все працює у пам’яті Canister, що дешевше.
Далі —
• Frontend/UI, який також зазвичай розміщується на централізованих хмарних сервісах, таких як ) Netlify, Vercel(, або децентралізованих сховищах, таких як )IPFS/Filecoin(. Але в системі ICP Canister App frontend обслуговується напряму з Canister )HTML, CSS та JavaScript(.
Останнє —
• User Access: у поточній архітектурі традиційних Blockchain App потрібен централізований gateway/node provider, як-от Infura або Alchemy. Але у системі ICP Canister App доступ здійснюється напряму через URL, як звичайний вебсайт через ICP Gateway.
Переваги розміщення Frontend на On-chain
Ми нещодавно стали свідками зупинки роботи багатьох сервісів через перебої з Cloudflare.
Але, якби frontend обслуговувався On-chain замість централізованої хмари, то це б дозволило:
• End-to-End Trust: Оскільки front-end )тобто користувацький інтерфейс, який ми бачимо у своїх браузерах( обслуговується безпосередньо з того ж децентралізованого smart contract, що і backend-логіка, це робить весь застосунок захищеним від підробки та неможливим для зупинки. Не буде жодної єдиної точки відмови )SPOF(.
• Усунення хмарних провайдерів: Розробникам не треба покладатися на AWS, Google Cloud, Cloudflare тощо, а також на традиційні CDN )Content Delivery Networks( для хостингу частини свого застосунку. • Web Speed: Оскільки Canisters обробляють HTTP-запити напряму і обслуговують контент, швидкість буде на рівні мілісекунд для read-запитів і забезпечуватиме схожий досвід із традиційним Web2.
Якби всі традиційні Blockchain Apps повністю працювали на децентралізованій архітектурі без використання Web2 cloud services, то навіть у разі зупинки всіх цих хмарних платформ це ніяк не вплинуло б на Blockchain Apps.
Тому архітектура Canister Smart Contracts — це те, що перетворює Internet Computer із децентралізованого реєстру в децентралізовану хмарну платформу з можливістю та потужністю запускати будь-який сучасний застосунок практично.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
Серед основних інновацій ICP ( Internet Computer Protocol) є
CANISTER SMART CONTRACTS ( FULL-STACK DECENTRALIZATION)
~ Canister Smart Contract — це основний блок або важлива частина всього, що стосується обчислень і даних у межах Internet Computer Protocol.
Він визначає або проєктує, яким буде smart contract, переводячи smart contract із простого транзакційного або невеликого шматка коду в масштабований, як веб, контейнер програмного забезпечення( Велике сховище даних), який повністю працює на Blockchain.
Canister — це не просто код, а обчислювальний блок, який складається з двох важливих компонентів:
Перший — це
• Код: тобто WebAssembly (Wasm), який є частиною, що містить логіку застосунку. Wasm підтримує та дозволяє розробникам писати код на основних і найпопулярніших мовах програмування, таких як Rust, Typescript, а також motoko(, тобто власна мова програмування ICP.
Другий компонент —
• Стан )Data(: тобто пам’ять і сховище даних для застосунку. Саме тут зберігається вся інформація застосунку, причому автоматично та безпечно мережею відповідно до принципу ) Orthogonal Persistence(.
Тобто, це щось на зразок bundle чи контейнерів cloud computing з Web2, але які працюють на децентралізованій мережі, публічному Blockchain.
Canister має можливість розміщувати та обслуговувати повний стек web-застосунку, тобто frontend, backend і дані, і все це повністю On-chain.
Тепер давайте розглянемо основні 4 компоненти традиційного Blockchain App )Web3(, як вони працюють і як виглядатимуть у системі ICP Canister App.
Перший —
• Backend Logic, тобто бізнес-логіка, яка зазвичай працює на smart contract )EVM(. Але в системі ICP Canister App вона працюватиме всередині Canister )Wasm(.
Далі —
• Data Storage, яке є дуже дорогим, і більшість традиційних Blockchain App )Web3( покладаються на централізовані бази даних, такі як )AWS, Azure та Cloudflare(. Але в системі ICP Canister App все працює у пам’яті Canister, що дешевше.
Далі —
• Frontend/UI, який також зазвичай розміщується на централізованих хмарних сервісах, таких як ) Netlify, Vercel(, або децентралізованих сховищах, таких як )IPFS/Filecoin(. Але в системі ICP Canister App frontend обслуговується напряму з Canister )HTML, CSS та JavaScript(.
Останнє —
• User Access: у поточній архітектурі традиційних Blockchain App потрібен централізований gateway/node provider, як-от Infura або Alchemy.
Але у системі ICP Canister App доступ здійснюється напряму через URL, як звичайний вебсайт через ICP Gateway.
Переваги розміщення Frontend на On-chain
Ми нещодавно стали свідками зупинки роботи багатьох сервісів через перебої з Cloudflare.
Але, якби frontend обслуговувався On-chain замість централізованої хмари, то це б дозволило:
• End-to-End Trust: Оскільки front-end )тобто користувацький інтерфейс, який ми бачимо у своїх браузерах( обслуговується безпосередньо з того ж децентралізованого smart contract, що і backend-логіка, це робить весь застосунок захищеним від підробки та неможливим для зупинки. Не буде жодної єдиної точки відмови )SPOF(.
• Усунення хмарних провайдерів: Розробникам не треба покладатися на AWS, Google Cloud, Cloudflare тощо, а також на традиційні CDN )Content Delivery Networks( для хостингу частини свого застосунку.
• Web Speed: Оскільки Canisters обробляють HTTP-запити напряму і обслуговують контент, швидкість буде на рівні мілісекунд для read-запитів і забезпечуватиме схожий досвід із традиційним Web2.
Якби всі традиційні Blockchain Apps повністю працювали на децентралізованій архітектурі без використання Web2 cloud services, то навіть у разі зупинки всіх цих хмарних платформ це ніяк не вплинуло б на Blockchain Apps.
Тому архітектура Canister Smart Contracts — це те, що перетворює Internet Computer із децентралізованого реєстру в децентралізовану хмарну платформу з можливістю та потужністю запускати будь-який сучасний застосунок практично.