Jak wszyscy wiemy, rozwój Ethereum stoi przed nowymi trudnościami. Ethereum codziennie wspiera ogromną działalność gospodarczą, rozliczając miliardy dolarów w transakcjach i obsługując tysiące DApps w dynamicznie rozwijających się sektorach DeFi i NFT. Jednak ograniczone zasoby przestrzenne Ethereum nie są już w stanie obsłużyć zbyt wielu aplikacji ani nie mogą zaakceptować napływu dużej liczby użytkowników. Gdy sieć jest przeciążona, transakcje stają się droższe i opóźnione, co stanowi większe obciążenie finansowe dla użytkowników.

W związku z tym, aby rozwiązać problem ekspansji Ethereum, odpowiednie zespoły zaproponowały wiele rozwiązań technicznych, w tym sharding. Sharding dzieli sieć na wiele ścieżek, przetwarzając transakcje równolegle w sposób skalowalny poziomo, rozdzielając moc obliczeniową i pamięć masową na wiele serwerów, co skutkuje wyższą ogólną przepustowością. Techniczna koncepcja „nie każdy musi uruchamiać każdy shard”, skupiająca się na shardingu, stała się kluczem do narodzin lekkich klientów.

Klienci Light odgrywają ważną rolę w shardingu Ethereum, umożliwiając weryfikatorom szybką weryfikację i synchronizację różnych shardów, skutecznie rozwiązując wiele problemów pojawiających się podczas działania DApps. Sieci publiczne, takie jak Polkadot i NEO, które również borykają się z trudnościami, takimi jak ograniczona ekspansja i duża pojemność użytkowników spowodowana szybkim rozwojem, również rozpoczęły praktykę lekkich klientów, aby zapewnić płynniejsze i bardziej komfortowe środowisko dla lepszego rozplanowania krajobrazu ekologicznego aplikacji .

Marty McFly powiedział kiedyś: „W przyszłości lekkie klienty będą wszędzie”. Istnieje wiele udanych przykładów tej lekkiej, przyjaznej dla użytkownika aplikacji. Czym właściwie jest lekki klient? Jakie są techniczne optymalizacje i ulepszenia w porównaniu z tradycyjnymi portami aplikacji? Jakie wyzwania należy pokonać w obliczu przyszłości, wdrażając na dużą skalę lekkich klientów? Artykuł ten skupi się na powyższych zagadnieniach i da Państwu wgląd w rozwój i przyszłość lekkich klientów.

Kim jest lekki klient? Łatwa weryfikacja, szybka reakcja

Zanim zrozumiemy klientów lekkich, musimy najpierw zacząć od koncepcji klientów. Klient w informatyce to sprzęt lub oprogramowanie, które łączy się z serwerem, podobnie jak przeglądarka internetowa to klient, który łączy się z witryną internetową w celu zażądania jej zawartości. W świecie blockchain klienci to oprogramowanie, które łączy się z innymi klientami w sposób punkt-punkt. Wszyscy klienci komunikują się ze sobą i tworzą sieć, a każdy klient jest węzłem.

Biorąc za przykład Ethereum, w przeszłości istniał tylko jeden typ węzła (znany również jako: pełny węzeł) odpowiedzialny za weryfikację i przekazywanie transakcji i bloków w sieci. Ze względu na specyfikę działania Internetu i blockchain, każdy pełny węzeł musi pobrać i zweryfikować każdy blok, a każda transakcja musi także przejść pełną weryfikację i kontrolę procesu. Wraz ze wzrostem liczby użytkowników i wzrostem aplikacji zorientowanych na usługi, ten rodzaj kontroli obejmującej wszystkie węzły spowoduje wspomniane powyżej problemy, takie jak wysokie koszty i powolna weryfikacja, utrudniając długoterminowy rozwój Ethereum.

W tym scenariuszu stopniowo pojawiała się koncepcja lekkich klientów. Klienci lekcy są kluczowym elementem ekosystemu blockchain, pomagając użytkownikom uzyskać dostęp do łańcucha bloków i wchodzić w interakcję z nim w bezpieczny i zdecentralizowany sposób, bez konieczności czytania i zapisywania dużych ilości informacji w łańcuchu bloków. Klienci Light mogą wchodzić w interakcję z pełnymi węzłami przy minimalnym zaufaniu i mogą udowadniać autentyczność informacji bez wcześniejszej wiedzy. Podstawową funkcją klienta light jest pobieranie za każdym razem, gdy w sieci pojawi się blok i wysyłanie do klienta żądania o potwierdzenie Merkle określonego stanu. Wykorzystuje rozproszoną tabelę skrótów do śledzenia węzłów prefiksów zamiast korzystać z pamięci lokalnej. Bezpośrednio uzyskuje materiały weryfikujące informacje o poszczególnych użytkownikach metodą „przechowywanie w chmurze, weryfikacja w chmurze”, promując szybszy rozwój transakcji, rozrywki i innych działań.

Ogólnie rzecz biorąc, klienci lekcy radzą sobie z głównymi barierami utrudniającymi użyteczność i przyjęcie technologii. Jako komponenty infrastruktury Web3, lekkie klienty umożliwiają interakcję z łańcuchem bloków w sposób wymagający mniej zasobów niż uruchomienie pełnego węzła i mogą być osadzone w aplikacjach stacjonarnych, internetowych i mobilnych. Co najważniejsze, pozostają one bez zaufania i synchronizują nagłówki bloków bezpośrednio od partnerów. Klient lekki działa poprzez wysyłanie żądań do pojedynczego pełnego węzła, synchronizując nagłówki bloków łańcucha bloków w celu sprawdzenia konkretnej odpowiedzi dostarczonej przez pełny węzeł, naprawdę osiągając „co najwyżej raz”.

 

Historie sukcesu przy użyciu lekkich klientów

Obecnie, niezależnie od tego, czy jest to Ethereum, czy Polkadot, wszystkie główne sieci publiczne zaczęły aktywnie wprowadzać techniczną koncepcję lekkich klientów i nadal podejmują próby projektowania lekkich aplikacji klienckich w łańcuchu, starając się objąć różne DApps i infrastrukturę, zapewniając programistom oraz Zapewnij użytkownikom nowe doświadczenie operacyjne.

Puszyste

Fluffy to lekki klient Ethereum, tryb operacyjny opracowany dla klienta Ethereum 2.0 Nimbus. Lekka, przyjazna dla klienta sieć musi projektować węzły, które potrzebują jedynie niewielkiej ilości miejsca do przechowywania danych i niewielkiego obciążenia, aby uczestniczyć w sieci i wnosić swój wkład, zamiast wymagać od każdego węzła dużego obciążenia. Fluffy to klient techniczny zgodny z tą koncepcją działania, który umożliwi klientowi nimbus-eth1 działanie jako lekki węzeł kliencki w sieci. Dzięki opracowaniu protokołu Portal Wire z powodzeniem osiąga on uzgadnianie z innymi klientami, stając się „mostem”. węzeł". "Wprowadź dane o stanie sieci portalu i łatwo realizuj szybką transmisję danych w chmurze. Dodatkowo Fluffy będzie obsługiwał podzbiór interfejsu API Ethereum JSON-PRC, dzięki czemu udogodnienia takie jak portfele będą mogły bezpośrednio integrować takich klientów.

NEO

W ekosystemie społeczności technologicznej NEO istnieje lekki klient o nazwie Neo-Swift, który może wchodzić w interakcję z blockchainem NEO. Jest on napisany i obsługiwany głównie w języku Swift-4. Powstanie projektu Neo-Swift wynika głównie z następujących powodów: 1. Programiści chcą tworzyć rozproszone aplikacje na iOS o szerokim zasięgu; 2. Ważnym sposobem na zbudowanie społeczności przyjaznej programistom jest stworzenie łatwej platformy do wykorzystania dla programistów innych niż Blockchain SDK 3. Wielu programistów takich jak Swift oraz rozwój i wdrażanie urządzeń mobilnych mają coraz większe znaczenie. Poinformowano, że Neo-Swift może skutecznie weryfikować historię transakcji użytkowników i status konta w łańcuchu, a także zapewnia symulowaną dynamiczną strukturę interakcji aplikacji, zapewniając nowy pomysł na ulepszanie i kształtowanie społeczności technologii ekologicznych NEO.

Połączenie podłoża

Substrate Connect to oparty na przeglądarce lekki klient dla łańcucha Substrate, który stał się najnowszym dodatkiem do stosu technologii Substrate. Ten długo oczekiwany komponent infrastruktury zapewnia programistom i użytkownikom końcowym prostszy i szybszy sposób stosowania aplikacji, łączenia się z łańcuchem Substrate w całkowicie zdecentralizowany i pozbawiony zaufania sposób, zwiększając możliwości większej liczby usług DApp i rozwoju DApp. Ludzie mają dobre doświadczenia z aplikacjami. Substrate Connect to biblioteka JavaScript, która zapewnia w pełni funkcjonalnego lekkiego klienta z rozszerzeniami, zastępując tradycyjny proces łączenia się z łańcuchem Substrate za pośrednictwem węzłów RPC. Programiści DApp nie muszą już przechodzić przez żmudne kroki uruchamiania lokalnego pełnego klienta Light integracja jest łatwo dostępna bezpośrednio w ich DApp.

Heliosa

Helios to lekki klient Ethereum uruchomiony przez a16z Crypto, znaną instytucję kapitału wysokiego ryzyka. Helios składa się z warstwy wykonawczej i warstwy konsensusowej, ściśle łączy dwie warstwy, więc użytkownicy muszą zainstalować i uruchomić tylko jedno oprogramowanie, aby móc korzystać z Helios. Ponadto Helios jest napisany w oparciu o język Rust i jest nim synchronizuje się w ciągu dwóch sekund, nie wykorzystuje pamięci i zapewnia zaufany dostęp do Ethereum. Jego użycie jest w zasadzie takie samo jak w przypadku pełnego węzła. Warto wspomnieć, że Helios konwertuje dane od niezaufanego scentralizowanego dostawcy RPC do weryfikowalnie bezpiecznego lokalnego RPC, łącząc się i pracując z wcześniej znanymi skrótami bloków łańcucha nawigacyjnego i niezaufanymi RPC, weryfikując ich autentyczność bez uruchamiania pełnego węzła. Ponieważ Helios jest tak lekki, użytkownicy mogą uzyskać dostęp do bezpiecznych danych łańcuchowych z dowolnego urządzenia (w tym telefonów komórkowych i rozszerzeń przeglądarki), co naprawdę zapewnia wygodę lekkich klientów.

W obliczu przyszłości: Jak pokonać trudności lekkich klientów

Stosowanie klientów lekkich staje się coraz bardziej powszechne, ale nie można ignorować związanych z tym wad operacyjnych. Na przykład lekkie klienty nie łączą się bezpośrednio z usługami sieciowymi, nie mogą weryfikować innych wymaganych informacji poza klientem i nie mogą bezpośrednio przesyłać danych do innych równorzędnych węzłów. Obecnie ekosystem sieci publicznych stale kładzie nacisk na technologię „cross-chain” do transmisji danych i wydajnego przetwarzania. Programiści mogą uczyć się na doświadczeniach związanych z technologią cross-chain i próbować realizować mostowanie danych dla lekkich klientów modernizacja techniczna i optymalizacja funkcjonalna kluczowych klientów lekkich.

Ponadto klientom lekkim brakuje również lepszej metody motywowania użytkowników. Powszechnie wiadomo, że zachęty są kluczem do stabilności ekosystemu. Jak umożliwić użytkownikom dostęp do blockchain w zdecentralizowany i bezpieczny sposób, zachęcić użytkowników i instytucje do uruchamiania pełnych węzłów, obsługiwać lekkie węzły i karać złośliwe pełne węzły, które serwują złe dane? Być może można zastosować system koncepcyjny podobny do zarządzania „DAO” do obsługi i zarządzania ekosystemem lekkiego klienta, tworząc system cyklu pozytywnego pomiędzy „programistami – lekkimi klientami – użytkownikami”.

W rzeczywistości może istnieć wiele rozwiązań technicznych, takich jak optymalizacja środowiska operacyjnego lekkich klientów i wprowadzanie innowacji w funkcjach lekkich klientów. W przyszłości programiści będą musieli nadal wprowadzać innowacje i tworzyć doskonałych lekkich klientów dla Web3.

Bibliografia:

Kim jest lekki klient? i dlaczego musisz to wiedzieć

Wprowadzenie | Rozpoczęcie pracy z lekkim klientem blockchainu Ethereum

NASTĘPNA Klasa społeczności |. Lekcja 26: Jak stworzyć lekkiego klienta NEO

Wprowadzenie |. Fluffy Client: Niezwykle lekki klient dla Ethereum