Biała księga Arteli

20 czerwca najnowocześniejszy równoległy projekt EVM warstwy 1, Artela, opublikował białą księgę „Full Stack Parallelization”, której celem jest pełne uwolnienie skalowalności łańcucha bloków i umożliwienie DApps uzyskania „przewidywalnej wydajności”.

Przewidywalna wydajność odnosi się do zapewnienia przewidywalnego TPS dla DApps, co jest kluczowe dla DApps w niektórych scenariuszach biznesowych. Aplikacje DApp wdrożone w łańcuchu publicznym muszą generalnie konkurować z innymi aplikacjami DApp o moc obliczeniową i przestrzeń dyskową w łańcuchu bloków. Dlatego w przypadku przeciążenia sieci spowoduje to stosunkowo wysokie koszty realizacji transakcji, a opóźnienia w transakcjach będą bardzo duże ograniczyło szybki rozwój DApps. Można sobie wyobrazić, że jeśli użytkownik korzysta ze zdecentralizowanego oprogramowania do przesyłania wiadomości błyskawicznych, ponieważ przestrzeń blokowa podstawowej sieci blockchain jest zajęta przez inne aplikacje DApp, wiadomości użytkownika będą z trudem wysyłane i odbierane, co powoduje katastrofę w środowisku użytkownika .

Aby rozwiązać problem „przewidywalnej wydajności”, najczęstszym podejściem jest użycie blockchainu specyficznego dla aplikacji, znanego również jako łańcuch aplikacji (Appchain), który jest przestrzenią blokową dedykowaną dla blockchainu specyficznego dla aplikacji.

Artela innowacyjnie proponuje rozwiązanie Elastic Block Space (EBS), które opiera się na koncepcji elastycznego przetwarzania i dynamicznie dopasowuje zasoby blokowe do specyficznych potrzeb DApps z poziomu protokołu, aby zapewnić niezależną rozbudowę DApps o dużym zapotrzebowaniu na przestrzeń blokową.

W tym artykule przedstawimy odpowiednio łańcuch aplikacji i przestrzeń bloków elastycznych oraz porównamy zalety i wady tych dwóch.

Ścieżka rozwoju łańcucha aplikacji

Łańcuchy aplikacji to łańcuchy bloków utworzone w celu uruchomienia pojedynczej aplikacji DApp. Zamiast budować na istniejącym łańcuchu bloków, twórcy aplikacji budują od podstaw nowy łańcuch bloków za pomocą niestandardowej maszyny wirtualnej, która wykonuje transakcje od użytkowników wchodzących w interakcję z aplikacją. Deweloperzy mogą także dostosowywać różne elementy stosu sieci blockchain — konsensus, sieć i wykonanie — aby spełnić określone wymagania projektowe, rozwiązując w ten sposób problemy, takie jak duże przeciążenie, wysokie koszty i stałe funkcje we współdzielonych sieciach.

Łańcuchy aplikacji nie są nową koncepcją: Bitcoin można postrzegać jako łańcuch aplikacji „cyfrowego złota”, Arweave można postrzegać jako łańcuch aplikacji do trwałego przechowywania, a Celestia można postrzegać jako łańcuch aplikacji zapewniający dostępność danych.

Począwszy od 2016 roku łańcuchy aplikacji obejmują nie tylko jednochipowe łańcuchy bloków, ale także formy wielołańcuchowe, czyli ekosystemy zbudowane z wielu wzajemnie połączonych łańcuchów bloków, których głównymi przedstawicielami są Cosmos i Palkadot. Cosmos jako pierwszy przewidział wiele połączonych ze sobą światów blockchain i zaangażował się w rozwiązanie problemu interakcji między łańcuchami bloków. Może szybko opracować i uruchomić łańcuch za pośrednictwem pakietu Cosmos SDK. Zaprojektował protokół IBC do prowadzenia interakcji typu blockchain bez przeszkód itp.; Palkadot ma na celu stać się idealnym rozwiązaniem do ekspansji blockchain. Łańcuchy w jego ekologii nazywane są parachains. Palkadot od początku opowiada się za wspólnym bezpieczeństwem, a różne parachains mogą komunikować się poprzez informacje oparte na wzajemnej zgodzie.

Pod koniec 2020 roku, gdy badania nad ekspansją Ethereum skupiały się na kilku rozwiązaniach, takich jak łańcuchy boczne, podsieci i pakiety zbiorcze warstwy 2, łańcuch aplikacji również wykluł odpowiednie formy. Łańcuchy boczne, takie jak Polygon i podsieci, takie jak Avalanche, poprawiają ogólne możliwości usług, poprawiając doświadczenie i wydajność łańcuchów bocznych lub podsieci; Pakiety zbiorcze warstwy 2 obsługują łańcuchy aplikacji w postaci modułowych stosów, wśród których OP Stack i Polygon CDK zostały pozytywnie przyjęte przez wielu projektów, a celem rozwiązania Layer 2 Rollups jest zwiększenie przepustowości i skalowalności sieci Ethereum, aby sprostać rosnącemu zapotrzebowaniu na transakcje oraz zapewnić szerszą interoperacyjność i interoperacyjność.

Obecnie istnieje już duża liczba aplikacji wbudowanych w łańcuchy aplikacji na różnych platformach. Na przykład firma Axie uruchomiła swój łańcuch boczny Ethereum Ronin na początku 2021 r.; DeFi Kingdoms ogłosiło migrację z Harmony do podsieci Avalanche pod koniec 2021 r.; Injective uruchomiło łańcuch aplikacji DeFi zbudowany przy użyciu pakietu Cosmos SDK w listopadzie 2021 r.; 2022 Ogłoszono, że wersja V4 produktu będzie wykorzystywać technologię Cosmos SDK do budowy niezależnego łańcucha aplikacji; Uptick Network uruchomi w 2023 roku ekologiczny łańcuch aplikacji Uptick Chain jako infrastrukturę do rozwoju aplikacji ekologicznych Web3. Infrastruktura również posiada bogata komercyjna warstwa protokołu.

Zalety i wady łańcucha aplikacji

Łańcuchy aplikacji zyskują pełną moc do uruchamiania swojego suwerennego łańcucha bloków, zamiast polegać na podstawowej warstwie 1, która jest mieczem obosiecznym.

Istnieją trzy główne zalety:

  • Suwerenność: Łańcuch aplikacji może rozwiązywać problemy poprzez własne rozwiązania w zakresie zarządzania, utrzymywać niezależność i autonomię poszczególnych projektów aplikacji oraz zapobiegać różnym zakłóceniom i przeszkodom;

  • Wydajność: może sprostać niskim opóźnieniom i dużej przepustowości wymaganej przez aplikacje, zapewnić użytkownikom dobre doświadczenia i znacznie poprawić rzeczywistą wydajność operacyjną DApp;

  • Możliwość dostosowania: programiści DApp mogą dostosować łańcuch do swoich potrzeb, a nawet stworzyć ekosystem, zapewniając wystarczająco elastyczną metodę ewolucji.

Istnieją również trzy wady:

  • Kwestie bezpieczeństwa: Łańcuchy aplikacji muszą być odpowiedzialne za własne bezpieczeństwo, w tym za ważenie liczby węzłów, utrzymywanie mechanizmów konsensusu, unikanie ryzyka związanego z zastawem itp. Sieć jest stosunkowo niebezpieczna;

  • Problemy międzyłańcuchowe: Jako niezależny łańcuch, łańcuch aplikacji nie jest interoperacyjny z innymi łańcuchami (aplikacjami) i napotyka problemy międzyłańcuchowe. Integracja protokołów międzyłańcuchowych zwiększy ryzyko międzyłańcuchowe;

  • Kwestia kosztów: Łańcuch aplikacji wymaga dużej ilości dodatkowej infrastruktury, co wymaga dużych kosztów i czasu projektowania. Ponadto istnieją koszty utrzymania i utrzymania węzłów.

W przypadku firm rozpoczynających działalność wady łańcuchów aplikacji mają ogromny wpływ na aplikacje DApp, które wprowadzają na rynek. Zespoły programistyczne większości firm typu start-up nie tylko nie są w stanie dobrze rozwiązać problemów związanych z bezpieczeństwem i problemami między łańcuchami, ale też to robią obciążone dużą liczbą pracowników, przekonanie ich do rezygnacji wymaga czasu i pieniędzy. Jednak przewidywalna wydajność jest koniecznością w przypadku konkretnych aplikacji DApp. Dlatego rynek pilnie potrzebuje rozwiązania zapewniającego przewidywalną wydajność w warstwie 1.

Elastyczna przestrzeń blokowa

W Web2 elastyczne przetwarzanie danych jest powszechnym modelem przetwarzania w chmurze, który umożliwia systemom dynamiczne skalowanie w górę lub w dół zasobów przetwarzania komputera, pamięci i pamięci masowej w zależności od potrzeb, aby sprostać zmieniającym się wymaganiom, bez martwienia się o planowanie wydajności i inżynierię pod kątem szczytowego wykorzystania.

Elastyczna przestrzeń blokowa automatycznie dostosowuje liczbę transakcji umieszczonych w bloku w zależności od stopnia przeciążenia sieci. W przypadku transakcji określonych aplikacji sieć blockchain zapewnia stabilną przestrzeń blokową i gwarancję TPS poprzez elastyczne przetwarzanie, które osiąga „przewidywalną wydajność”.

MegaETH zaproponowała również podobną koncepcję „elastycznej dynamicznej ekspansji” i uważa, że ​​jest to nieunikniona ścieżka rozwoju dla DApps w celu wspierania adopcji na dużą skalę. W ciągu najbliższych 1-3 lat przewiduje się następujący rozwój technologiczny:

  • Faza 1: Ekspansja pozioma na poziomie węzła weryfikacji;

  • Drugi etap: ekspansja statyczna na poziomie łańcucha;

  • Trzeci etap: dynamiczna ekspansja pozioma na poziomie łańcucha.

Artela rzeczywiście wdrożyła tę koncepcję i rozwiązała podstawowy problem w pierwszej fazie, „jak koordynować poziomą ekspansję węzłów weryfikacyjnych w celu obsługi obliczeń elastycznych”. W miarę rozwoju protokołu w sieci Artela może on subskrybować elastyczną przestrzeń blokową, aby obsłużyć rosnącą liczbę użytkowników protokołu i przepustowość. Elastyczna przestrzeń blokowa zapewnia niezależną przestrzeń blokową dla aplikacji DApps wymagających dużej przepustowości transakcji, umożliwiając ich skalowanie w miarę ich rozwoju. Zasadniczo przestrzeń blokowa określa ilość danych, które mogą być przechowywane w każdym bloku łańcucha bloków, bezpośrednio wpływając na przepustowość transakcji. Kiedy DApps doświadcza gwałtownego wzrostu zapotrzebowania na transakcje, subskrypcja elastycznej przestrzeni blokowej staje się przydatna, aby skutecznie obsługiwać zwiększone obciążenie bez wpływu na bazowy łańcuch bloków.

Implementacja obliczeń elastycznych dzieli się na „elastyczność w czasie rzeczywistym” i „elastyczność w czasie innym niż w czasie rzeczywistym”. „Elastyczność w czasie rzeczywistym” ogólnie odnosi się do reakcji na poziomie minut na zwiększenie wydajności, natomiast „elastyczność w czasie innym niż w czasie rzeczywistym”. musi jedynie reagować na zwiększenie wydajności w ograniczonym czasie. Artela przyjmuje metodę „elastyczności nie w czasie rzeczywistym”, czyli gdy sieć wykryje potrzebę rozbudowy, zainicjuje propozycję rozbudowy, a węzły weryfikacyjne całej sieci zakończą rozbudowę po jednej lub kilku epokach ( zamiast w czasie rzeczywistym). I przedstaw dowód rozszerzenia, aby inni weryfikatorzy mogli go zakwestionować.

Rozwiązanie firmy Artela z elastyczną przestrzenią blokową w rzeczywistości czerpie z wielu koncepcji rozproszonych baz danych i jest także kontynuacją technologii blockchain sharding. Z perspektywy „computing shardingu” pojemność jest zwiększana w zależności od zapotrzebowania na ruch aplikacji, unikając problemu „transakcji między fragmentami”, dzięki czemu doświadczenia programisty i użytkownika nie różnią się zbytnio od wcześniejszych. Jednocześnie przyjęcie „elastyczności nie działającej w czasie rzeczywistym”, która jest stosunkowo trudna do wdrożenia, zwiększyło jej zastosowanie, spełniając jednocześnie rzeczywiste potrzeby wielu aplikacji DApp.

Warto wspomnieć, że elastyczna przestrzeń bloków, jako rozwiązanie umożliwiające horyzontalne rozszerzanie wydajności blockchainu, opiera się na założeniu, że „transakcje mogą być zrównoleglone”. Dopiero po zwiększeniu równoległości transakcji zasoby maszynowe węzła wymagają poziomej rozbudowy , aby poprawić przepustowość transakcji.

Dlatego w przypadku warstwy 1, takiej jak Ethereum, problem serializacji transakcji jest najbardziej bezpośrednim wąskim gardłem wydajności, a rozmiar bloku jest również ograniczony przez limit gazu bloku o zmiennym rozmiarze (górny limit to 30 000 000 gazu), więc możemy tylko szukaj rozwiązania rozszerzającego warstwy 2.

W przypadku wysokowydajnej warstwy 1, takiej jak Solana, chociaż obsługuje ona równoległą realizację transakcji i może skalować się w poziomie, nie radzi sobie z problemem „przewidywalnej wydajności” DApps w okresach szczytowego zapotrzebowania. Wdrażając rozwiązanie „lokalnego rynku opłat”, Solana ma na celu zapobieganie monopolizacji ograniczonej przestrzeni blokowej przez transakcje na jedno żądanie, ograniczając czasowe wzrosty opłat i łagodząc negatywny wpływ nagłych szczytów popytu. Na przykład podczas wystawiania NFT wystawca NFT szybko wykorzysta limit jednostki obliczeniowej (CU) każdego konta, a kolejne transakcje muszą zwiększyć opłatę priorytetową, aby mogły zostać przetworzone w ograniczonej przestrzeni tego rachunku.

Można powiedzieć, że elastyczne rozwiązanie firmy Artela dotyczące przestrzeni blokowej, aby sprostać wzrostowi popytu na transakcje, dodatkowo rozszerza koncepcję „lokalnego rynku opłat” w Solanie, co nie tylko zapewnia „przewidywalną wydajność” DApp, ale także zapobiega rozprzestrzenianiu się w całej sieci Wzrost kosztów i zatory upiekli dwie pieczenie na jednym ogniu.

Podsumować

Niezależnie od tego, czy jest to łańcuch aplikacji, czy elastyczna przestrzeń bloków, zasadniczo mają one na celu rozwiązanie problemu polegającego na tym, że różne DApps mają różne wymagania dotyczące wydajności blockchain, lub problemu „przewidywalnej wydajności”. Pomiędzy tymi dwoma rozwiązaniami nie ma dobra ani zła, jest tylko odpowiednie jeden i niewłaściwy. Te dwa rozwiązania przypominają mi „teorię grubych protokołów” – teorię zaproponowaną przez Joela Monegro w 2016 roku, która obraca się wokół „w jaki sposób protokoły kryptograficzne powinny przechwytywać więcej (niż zbiorcza wartość przechwytywana przez aplikacje zbudowane na nich) „Wartość”. rozszerza się.

Łańcuch aplikacji jest w rzeczywistości cienkim protokołem. Zwłaszcza gdy warstwa 1 przyjmuje architekturę modułową, warstwa protokołu jest całkowicie dostosowywana przez warstwę aplikacji. Chociaż zapewnia to lepszy mechanizm akumulacji wartości dla aplikacji, wiąże się to również z wysokimi kosztami i ograniczonym bezpieczeństwem.

Elastyczna przestrzeń blokowa jest w rzeczywistości grubym protokołem, rozszerzeniem podstawowej warstwy protokołu warstwy 1, która skutecznie obniża barierę wejścia dla uczestników z wymaganiami „przewidywalnej wydajności”. Jednocześnie protokół może również przechwytywać wartość aplikacji i generować pozytywne wyniki sprzężenie zwrotne. .