Düğümler ve istemciler
Son düzenleme: @bicebaris(opens in a new tab), 26 Ağustos 2024
Ethereum, blokları ve işlem verilerini doğrulayabilen yazılım çalıştıran dağıtılmış bir bilgisayar ağıdır (düğümler olarak bilinir). Bilgisayarınızı bir Ethereum düğümüne dönüştürmek için bilgisayarınızda yazılım çalıştırılması gerekir. Bir düğüm oluşturmak için gerekli olan iki ayrı yazılım parçası ('istemci' olarak bilinir) vardır.
Ön koşullar
Daha derine dalmadan ve kendi Ethereum istemci örneğinizi çalıştırmadan önce, eşler arası ağ kavramını ve EVM'nin temellerini anlamalısınız. Ethereum'a giriş yazımıza bir göz atın.
Eğer düğümler konusunda acemiyseniz, ilk olarak bir Ethereum düğümü çalıştırmak üzerine kullanıcı dostu öğreticimize göz atmanızı öneririz.
Düğümler ve istemciler nedir?
Düğüm, Ehereum yazılımını çalıştırmakta olan bilgisayarlara bağlı ve bu şekilde bir ağ oluşturan herhangi bir Ethereum istemci örneğine verilen addır. Bir istemci, verileri protokol kurallarına göre doğrulayan ve ağı güvende tutan bir Ethereum uygulamasıdır. Bir düğüm iki istemci çalıştırmalıdır: bir fikir birliği istemcisi ve bir yürütüm istemcisi.
- Yürütüm İstemcisi (Yürütüm Motoru, EL istemcisi ya da eski adıyla Eth1 istemcisi olarak da bilinir) ağda yayınlanan yeni işlemleri takip eder, bunları Ethereum Sanal Makinesinde çalıştırır ve son durumlarıyla tüm güncel Ethereum verilerinin veritabanını tutar.
- Fikir Birliği İstemcisi (İşaret Düğümü, CL istemcisi ya da eski adıyla Eth2 istemcisi olarak da bilinir), ağın yürütüm istemcisinden gelen doğrulanmış veriler üzerinde anlaşmaya varmasını sağlayan hisse ispatı mutabakat algoritmasını uygular. Ayrıca yazılımın, düğümün ağı güvende tutma sürecine katılmasını sağlayan, fikir birliği istemcisine eklenebilecek ve "doğrulayıcı" olarak bilinen üçüncü bir parçası daha vardır.
Bu istemciler Ethereum zincirinin başını takip ederler ve kullanıcıların Ethereum ağıyla etkileşime geçmelerini sağlarlar. Çoklu yazılım parçalarının birlikte çalışmasıyla oluşan modüler tasarıma kapsüllenmiş karışıklık(opens in a new tab) adı verilir. Bu yaklaşım Birleşim'i sorunsuz bir şekilde uygulamaya geçirmeyi kolaylaştırdı, istemci yazılımını yönetmeyi ve geliştirmeyi kolayşatırdı ve de bireysel istemcilerinin tekrar kullanılabilmesini sağladı, örnek olarak katman 2 ekosistemiverilebilir.
Birleştirilmiş yürütüm ve fikir birliği istemcisinin basitleştirilmiş diyagramı.
İstemci çeşitliliği
Hem yürütüm istemcileri hem de fikir birliği istemcileri farklı takımlar tarafından geliştirilen çeşitli programlama dillerinde mevcuttur.
Birden fazla istemci uygulaması, tek bir kod tabanına olan bağlılığı azaltarak ağı daha güçlü hale getirebilir. İdeal hedef, ağa herhangi bir istemci hakim olmadan çeşitlilik elde etmek ve böylece potansiyel tek hata noktasını ortadan kaldırmaktır. Dillerin çeşitliliği ayrıca daha geniş bir geliştirici topluluğunu davet eder ve tercih ettikleri dilde entegrasyonlar oluşturmalarına olanak sağlar.
İstemci çeşitleri hakkında daha fazla bilgi edinin.
Tek bir özelliğe uymaları bu uygulamaların ortak noktalarıdır. Özellikler, Ethereum ağının ve blok zincirinin nasıl çalıştığını belirler. Her teknik detay belirlenmiştir ve özellikler şu şekilde bulunabilir:
- Başlangıçta, Ethereum Sarı Kağıdı(opens in a new tab)
- Yürütme özellikleri(opens in a new tab)
- Mutabakat özellikleri(opens in a new tab)
- Çeşitli ağ yükseltmelerinde uygulanan EIP'ler(opens in a new tab)
Ağdaki düğümleri izlemek
Çoklu iz sürücüler Ehereum ağında bulunan düğümlerle ilgili gerçek zamanlı taslaklar sunarlar. Merkeziyetsiz ağların doğası gereği, bu programların ağ ile ilgili kısıtlı bir perspektif sağlayabileceğine ve yanlış sonuçlar içeren raporlar verebileceğine de dikkat edin.
- Düğümlerin haritası(opens in a new tab), Etherscan
- Ethernodes(opens in a new tab), Bitfly
- Ethereum Düğüm Solucanı(opens in a new tab)
- Nodewatch(opens in a new tab), Chainsafe. Sürünen mutabakat düğümleri
Düğüm türleri
Kendi düğümünüzü çalıştırmak istiyorsanız, farklı şekilde veri tüketen farklı düğüm türleri olduğunu bilmeniz gerekir. İstemciler üç farklı düğüm türünü çalıştırabilir: hafif, tam ve arşiv. Daha hızlı senkronizasyon süresi sağlayan farklı senkronizasyon strateji seçenekleri de vardır. Senkronizasyon, Ethereum'un durumu hakkında en güncel bilgileri ne kadar hızlı alabileceğini ifade eder.
Tam düğüm
Tam düğümler blok zincirin blok-blok doğrulamasını yaparlar, bu her blok için blok gövdesini ve durum verisini yüklemeyi ve onaylamayı kapsar. Tam düğümün farklı sınıfları vardır - bazıları başlangıç blokundan başlar ve tüm blok zincir tarihindeki her bir bloku onaylar. Diğerleri onaylamalarına geçerli olduklarına güvendikleri daha eski bir bloktan başlarlar (ör:Geth'in "snap sync"i). Onaylamanın nerede başladığı fark etmeksizin, tam düğümler sadece yakın geçmişteki ve alakalı verinin yerel bir kopasını tutarlar (bu sıklıkla son 128 blok olur), bu da eski verinin disk alanından tasarruf edebilmek için silinmesine yol açar. Daha eski veri gerektiğinde yeniden oluşturulabilir.
- Tam blok zincir verilerini depolar (ancak bu periyodik olarak budanır, bu nedenle tam bir düğüm tüm durum verilerini başlangıç zincirine geri depolamaz)
- Blok doğrulamaya katılır, tüm blokları ve durumları doğrular.
- Tüm durumlar, ya yerel depodan alınabilir ya da tam bir düğüm tarafından "anlık görüntüler" kullanılarak yeniden oluşturulabilir.
- Ağa hizmet eder ve talep üzerine veri sağlar.
Arşiv düğümü
Arşiv düğümleri Başlangıçtan itibaren her bloku onaylayan ve yüklenmiş hiçbir veriyi silmeyen tam düğümlerdir.
- Tam düğümde tutulan her şeyi depolar ve geçmiş durumların bir arşivini oluşturur. 4.000.000 numaralı bloktaki bir hesap bakiyesi gibi bir şeyi sorgulamak veya izleme kullanarak madencilik yapmadan kendi işlem kümenizi basit ve güvenilir bir şekilde test etmek istiyorsanız bu gereklidir.
- Bu veri, arşiv düğümlerini ortalama kullanıcılar için daha az çekici hale getiren ancak blok arayıcıları, cüzdan satıcıları ve zincir analizi gibi hizmetler için kullanışlı olabilen terabayt birimlerini temsil eder.
İstemcileri arşiv dışındaki herhangi bir modda senkronize etmek, budanmış blok zincir verileriyle sonuçlanacaktır. Bu, tüm geçmiş durumların bir arşivinin olmadığı ancak tam düğümün, talep üzerine bunları oluşturabileceği anlamına gelir.
Arşiv düğümleri hakkında daha fazla bilgi edinin.
Hafif düğüm
Her bloku indirmek yerine, hafif düğümler sadece blok başlıklarını indirir. Bu başlıklar blokların içeriği hakkında özet bilgiler içerir. Hafif düğümün ihtiyaç duyduğu diğer bilgiler bir tam düğümden istenir. Hafif düğümü, daha sonra blok başlıklarındaki durum köklerine karşı aldıkları verileri bağımsız olarak doğrulayabilir. Hafif düğümler, kullanıcıların tam düğümleri çalıştırmak için gereken güçlü donanım veya yüksek bant genişliği olmadan Ethereum ağına katılmalarını sağlar. Nihayetinde, hafif düğümler cep telefonlarında veya yerleşik cihazlarda çalışabilir. Hafif düğümler mutabakata katılmazlar (yani madenciler/doğrulayıcılar olamazlar), ancak Ethereum blok zincirine bir tam düğümle aynı işlevsellik ve güvenlik garantisiyle erişebilirler.
Hafif istemciler, Ethereum için aktif bir geliştirme alanıdır ve yakında fikir birliği katmanı ve yürütme katmanı için yeni hafif istemciler görmeyi bekliyoruz. Ayrıca, dedikodu ağı(opens in a new tab) üzerinden hafif istemci verileri sağlamanın olası yolları da vardır. Bu avantajlıdır çünkü dedikodu ağı, istekleri yerine getirmek için tam düğümler gerektirmeden, bir hafif düğümler ağını destekleyebilir.
Ethereum henüz büyük bir hafif düğüm popülasyonunu desteklemiyor, ancak hafif düğüm desteği, yakın gelecekte hızla gelişmesi beklenen bir alandır. Özellikle, Nimbus(opens in a new tab), Helios(opens in a new tab), ve LodeStar(opens in a new tab) gibi istemciler şu anda ağırlıklı olarak hafif istemciler üzerine odaklanıyor.
Neden bir Ethereum düğümü çalıştırmalıyım?
Bir düğüm çalıştırmak, ağı daha sağlam ve merkezi olmayan bir şekilde tutarak desteklerken, Ethereum'u doğrudan, güvenmek zorunda kalmadan ve özel olarak kullanmanıza olanak tanır.
Size faydaları
Kendi düğümünüzü çalıştırmak, Ethereum'u özel, kendine yeten ve güvenilir bir şekilde kullanmanıza olanak sağlar. Verileri istemcinizle kendiniz doğrulayabileceğiniz için ağa güvenmeniz gerekmez. "Güvenme, doğrula." popüler bir blok zincir deyimidir.
- Düğümünüz, tüm işlemleri ve blokları mutabakat kurallarına karşı kendi başına doğrular. Yani ağdaki diğer düğümlere bağlı olmanız veya onlara tamamen güvenmeniz gerekmez.
- Kendi düğümünüzle bir Ethereum cüzdanı kullanabilirsiniz. Merkeziyetsiz uygulamaları daha güvenli ve özel olarak kullanabileceksiniz çünkü adreslerinizi ve bakiyelerinizi mali araçlara sızdırmak zorunda kalmayacaksınız. Her şey sizin kendi istemcinizle kontrol edilebilir. MetaMask(opens in a new tab), Frame(opens in a new tab) ve birçok farklı cüzdan size düğümünüzü kullanmalarını sağlayacak olan RPC-içe aktarmasını sunuyor.
- Ethereum verilerine bağlı diğer servisleri çalıştırabilir ve barındırabilirsiniz. Örneğin, bu bir İşaret Zinciri doğrulayıcısı, Katman 2 benzeri yazılımı, altyapı, blok arayıcıları, ödeme işlemcileri olabilir.
- Kendi özelleştirilmiş RPC uç noktalarınızı sağlayabilirsiniz. Hatta, büyük merkezi sağlayıcılardan kaçınmalarına yardım etmek için bu uç noktaları herkese açık olarak sunabilirsiniz.
- Süreçler Arası İletişimi (IPC) kullanarak düğümünüze bağlanabilir veya programınızı bir eklenti olarak yüklemek için düğümü yeniden yazabilirsiniz. Örneğin bu, web3 kütüphaneleri kullanılarak birçok veri işlenirken veya işlemlerinizi olabildiğince hızlı bir şekilde değiştirmeniz gerektiğinde (ör. öncülük etme) bayağı yardımcı olan düşük bir gecikme süresi sunar.
- Ağı güvenli hale getirmek ve ödüller kazanmak için direkt olarak ETH hisseleyebilirsiniz. Başlamak için solo hisselemeye bakın.
Ağ avantajları
Ethereum'un iyi durumu, güvenliği ve operasyonel esnekliği için çeşitli düğümler bulunması önemlidir.
- Tam düğümler mutabakat kurallarını uygular, böylece onları takip etmeyen blokları kabul etmeleri için kandırılamazlar. Bu, ağda ekstra güvenlik sağlar çünkü eğer bütün düğümler, tam doğrulama yapmayan hafif düğümler olsaydı, doğrulayıcılar ağa saldırabilirdi.
- Hisse ispatının kripto-ekonomik savunmalarını aşan bir saldırı durumunda, sosyal toparlanma dürüst zinciri izlemeyi seçen tam düğümler tarafından gerçekleştirilebilir.
- Ağdaki daha fazla düğüm, sansüre dayanıklı ve güvenilir bir sistem sağlayan, merkeziyetsizliğin nihai hedefi olan daha çeşitli ve dirençli bir ağ ile sonuçlanır.
- Tam düğümler, buna bağlı hafif istemciler için blok zincir verilerine erişim sağlarlar. Hafif düğümler tüm blok zinciri saklamazlar, bunun yerine verileri blok başlıklarındaki durum kökleri aracılığıyla doğrularlar. İhtiyaç duymaları halinde tam düğümlerden daha fazla bilgi talep edebilirler.
Eğer bir tam düğüm çalıştırıyorsanız, bir doğrulayıcı çalıştırmıyor olsanız da tüm Ethereum ağı bundan faydalanır.
Kendi düğümünüzü çalıştırma
Kendi Ethereum istemcinizi çalıştırmayı mı düşünüyorsunuz?
Daha acemi dostu bir giriş istiyorsanız, daha fazlasını öğrenmek için bir düğüm çalıştır sayfamızı ziyaret edin.
Eğer daha çok teknik bir kullanıcıysanız, kendi düğümünüzü nasıl çalıştıracağınıza dair daha fazla detay ve seçeneğe yönelin.
Alternatifler
Kendi düğümünüzü kurmak size zaman ve kaynak kaybettirebilir ama her zaman kendi örneğinizi çalıştırmanıza gerek yoktur. Böyle bir durumda, bir üçüncü taraf API sağlayıcısı kullanabilirsiniz. Bu hizmetlerin kullanımına ilişkin genel bakış için hizmet olarak düğümler makalesine bakın.
Eğer birisi topluluğunuzda genel API bulunduran bir Ethereum düğümü çalıştırırsa, cüzdanlarınızı Özel RPC aracılığıyla topluluk düğümüne işaret edebilir ve rasgele güvenilir üçüncü bir tarafla olacağından çok daha fazla gizlilik elde edebilirsiniz.
Öte yandan, bir istemci çalıştırırsanız bu istemciyi, ihtiyacı olabilecek arkadaşlarınızla paylaşabilirsiniz.
Yürütme istemcileri
Ethereum topluluğu, farklı programlama dilleri kullanan, farklı ekipler tarafından geliştirilen birden çok, açık kaynaklı yürütüm istemcisini (eskiden "Eth1 istemcileri" veya yalnızca "Ethereum istemcileri" olarak biliniyordu) yürütür. Bu, ağı daha güçlü ve çeşitli hale getirir. İdeal hedef, herhangi bir istemcinin çoğunluk sağlamadığı bir çeşitlilik elde ederek tüm tek başarısızlık noktalarını azaltmaktır.
Bu tablo, farklı istemcileri özetlemektedir. Hepsi istemci testlerini(opens in a new tab) başarıyla geçer ve ağ yükseltmeleriyle güncel kalmak için aktif olarak bakıma tabi tutulur.
İstemci | Dil | İşletim sistemleri | Ağlar | Senkronizasyon stratejileri | Durum budaması |
---|---|---|---|---|---|
Geth(opens in a new tab) | Go | Linux, Windows, macOS | Ana Ağ, Sepolia, Goerli | Snap, Full | Archive, Pruned |
Nethermind(opens in a new tab) | C#, .NET | Linux, Windows, macOS | Ana Ağ, Sepolia, Goerli, ve daha fazlası | Snap (hizmet olmadan), Fast, Full | Archive, Pruned |
Besu(opens in a new tab) | Java | Linux, Windows, macOS | Ana Ağ, Sepolia, Goerli, ve daha fazlası | Snap, Fast, Full | Archive, Pruned |
Erigon(opens in a new tab) | Go | Linux, Windows, macOS | Ana Ağ, Sepolia, Goerli, ve daha fazlası | Full | Archive, Pruned |
Desteklenen ağlar hakkında daha fazla bilgi için Ethereum ağları hakkında bilgi edinin.
Her istemcinin benzersiz kullanım durumları ve avantajları vardır, bu nedenle kendi tercihlerinize göre birini seçmelisiniz. Çeşitlilik, uygulamaların farklı özelliklere ve kullanıcı kitlelerine odaklanmasına olanak tanır. Özelliklere, desteğe, programlama diline veya lisanslara göre bir istemci seçmek isteyebilirsiniz.
Besu
Hyperledger Besu, genel ve izin verilen ağlar için kurumsal düzeyde bir Ethereum istemcisidir. Kapsamlı izleme özelliğinden GraphQL'yi takip etmeye kadar tüm Ethereum Ana Ağ özelliklerini çalıştırır ve hem açık topluluk kanallarında hem de işletmeler için ticari SLA'lar aracılığıyla ConsenSys tarafından desteklenir. Java ile yazılmıştır ve Apache 2.0 lisanslıdır.
Besu'nun kapsamlı dokümanları(opens in a new tab) size tüm özellikleri ve kurulum detayları hakkında yol gösterecektir.
Erigon
Eskiden Turbo-Geth olarak bilinen Ergion, hız ve disk alanı verimliliğine yönelik bir Go Ethereum çatalı olarak başlamıştır. Erigon, diğer dillerde de uygulamaları geliştirilen ancak şu anda Go ile yazılmış olan Ethereum'un tamamen yeniden tasarlanmış bir uygulamasıdır. Erigon'un amacı, Ethereum'un daha hızlı, daha modüler ve daha optimize edilmiş bir uygulamasını sağlamaktır. 3 günden daha kısa bir sürede, yaklaşık 2 TB disk alanı kullanarak, tam arşiv düğümü senkronizasyonu gerçekleştirebilir.
Go Ethereum
Go Ethereum (kısaca Geth), Ethereum protokolünün orijinal uygulamalarından biridir. Şu anda, kullanıcılar ve geliştiriciler için en büyük kullanıcı tabanına ve en çeşitli araçlara sahip en yaygın istemcidir. Go ile yazılmıştır, tamamen açık kaynak kodludur ve GNU LGPL v3 altında lisanslanmıştır.
Geth hakkında kendi dökümanları ile(opens in a new tab) daha fazlasını öğrenin.
Nethermind
Nethermind, C# .NET teknoloji yığınıyla oluşturulmuş bir Ethereum uygulamasıdır, LPGL-3.0 ile lisanslanmıştır ve ARM'yi de içeren büyük platformların hepsinde çalışmaktadır. Aşağıdakilerle harika performans sunar:
- optimize edilmiş bir sanal makine
- durum erişimi
- Prometheus/Grafana gösterge panelleri, sıralı kurumsal kayıt desteği, JSON RPC izleme ve analiz eklentileri gibi ağ iletişimi ve zengin özellikler.
Nethermind ayrıca premium kullanıcılar için ayrıntılı dokümanlar(opens in a new tab), güçlü geliştirici desteği, çevrimiçi bir topluluk ve 7/24 desteğe de sahiptir.
Mutabakat istemcileri
Mutabakat yükseltmelerini desteklemek için birden fazla fikir birliği istemcisi (eskiden "Eth2" istemcisi olarak biliniyordu) vardır. Çatal seçimi algoritması gibi mutabakat ile ilgili tüm akışlardan, doğrulamaları işlemekten ve hisse ispatı ödül ve cezalarını yönetmekten sorumludurlar.
İstemci | Dil | İşletim sistemleri | Ağlar |
---|---|---|---|
Lighthouse(opens in a new tab) | Rust | Linux, Windows, macOS | İşaret Zinciri, Gnosis, Goerli, Pyrmont, Sepolia, Ropsten ve daha fazlası |
Lodestar(opens in a new tab) | TypeScript | Linux, Windows, macOS | İşaret Zinciri, Goerli, Sepolia, Ropsten ve daha fazlası |
Nimbus(opens in a new tab) | Nim | Linux, Windows, macOS | İşaret Zinciri, Goerli, Sepolia, Ropsten ve daha fazlası |
Prysm(opens in a new tab) | Başla | Linux, Windows, macOS | İşaret Zinciri, Gnosis, Goerli, Pyrmont, Sepolia, Ropsten ve daha fazlası |
Teku(opens in a new tab) | Java | Linux, Windows, macOS | İşaret Zinciri, Gnosis, Goerli, Sepolia, Ropsten ve daha fazlası |
Lighthouse
Lighthouse, Rust ile yazılmış olan, Apache-2.0 lisansı altında bir fikir birliği istemcisi uygulamasıdır. Sigma Prime tarafından sürdürülmektedir ve İşaret Zinciri'nin başlangıcından beri stabil ve kullanıma hazırdır. Birçok kuruluş, hisseleme havuzu ve kişi tarafından güvenilmektedir. Masaüstü PC'lerden karmaşık otomatikleştirilmiş dağıtımlara kadar geniş bir ortam yelpazesinde güvenli, performanslı ve birlikte çalışabilir olmayı hedefler.
Dokümanlara Lighthouse Book(opens in a new tab)'tan ulaşılabilir
Lodestar
Lodestar, Typescript ile yazılan, LGPL-3.0 lisansının altında kullanıma hazır bir fikir birliği istemcisidir. ChainSafe System tarafından sürdürülmektedir ve solo paydaşlar, geliştiriciler ve araştırmacılar için fikir birliği istemcilerinin en yenisidir. Lodestar, Ethereum protokollerinin JavaScript uygulamalarından güç alan bir işaret düğümü ve doğrulayıcı istemcisinden oluşur. Lodestar, hafif istemciler ile Ethereum kullanılabilirliğini geliştirmeyi, erişilebilirliği daha büyük bir geliştirici grubuna genişletmeyi ve ekosistem çeşitliliğine daha fazla katkı sağlamayı hedefler.
Daha fazla bilgiye Lodestar web sitesinden(opens in a new tab) ulaşılabilir
Nimbus
Nimbus, Nim ile yazılmış olan, Apache-2.0 lisansı altında bir fikir birliği istemcisi uygulamasıdır. Solo paydaşlar ve hisseleme havuzları tarafından kullanılan kullanıma hazır bir istemcidir. Nimbus, kaynak verimliliği için tasarlanmıştır ve istikrardan veya ödül performansından taviz vermeden kaynak açısından sınırlı cihazlar ve kuruluş altyapılarında eşit kolaylıkla çalıştırılır. Daha hafif bir kaynak ayak izi, istemcinin ağ stres altında olduğunda daha büyük bir güvenlik toleransı olduğu anlamına gelir.
Nimbus dokümanlarında(opens in a new tab) daha fazlasını öğrenin
Prysm
Prysm, Go ile yazılmış, GPL-3.0 lisansının altında tam teşekküllü açık kaynak bir fikir birliği istemcisidir. İsteğe bağlı bir web uygulaması arayüzüne sahiptir ve kullanıcı deneyimine, dokümanlara ve hem evdeki hisseleme hem de kurumsal kullanıcılar için yapılandırılabilirliğe öncelik verir.
Daha fazlasını öğrenmek için Prysm dokümanlarını(opens in a new tab) ziyaret edin.
Teku
Teku, ilk İşaret Zinciri başlangıç istemcilerinden biridir. Ana hedeflerin (güvenlik, sağlamlık, istikrar, kullanılabilirlik, performans) yanında, Teku özel olarak bazı fikir birliği istemci standartlarına uymayı da hedeflemektedir.
Teku aşırı esnek dağıtım seçenekleri sunar. İşaret düğümü ve doğrulayıcı istemcisi beraber tek bir süreç olarak çalıştırılabilir, bu da solo paydaşlar için gayet uygundur veya karmaşık hisseleme işlemleri için düğümler ayrı biçimde çalıştırılabilir. Ek olarak, Teku imza anahtarı güvenliği ve kesinti koruması için Web3Signer(opens in a new tab) ile tamamen uyumludur.
Teku Java ile yazılmıştır ve Apache 2.0 lisanslıdır. ConsenSys'te aynı zamanda Besu ve Web3Signer için sorumlu olan Protokoller ekibi tarafından geliştirilmiştir. Daha fazlasını Teku dökümanlarından(opens in a new tab) öğrenin.
Senkronizasyon modları
Ağdaki mevcut verileri takip etmek ve doğrulamak için Ethereum istemcisinin en son ağ durumuyla senkronize olması gerekir. Bu, eşlerden veri indirerek, bütünlüklerini kriptografik olarak doğrulayarak ve yerel bir blok zincir veri tabanı oluşturarak yapılır.
Senkronizasyon modları, çeşitli değiş tokuşlarla bu sürece farklı yaklaşımları temsil eder. İstemciler, senkronizasyon algoritmalarının uygulanmasında da farklılık gösterir. Uygulamaya ilişkin ayrıntılar için her zaman seçtiğiniz istemcinin resmi belgelerine bakın.
Yürütüm katmanı senkronizasyon modları
Tam arşiv senkronizasyonu
Tam senkronizasyon, tüm blokları (başlıklar, işlemler ve makbuzlar dahil) indirir ve her bloku başlangıçtan yürüterek aşamalı olarak blok zincirin durumunu oluşturur.
- Her işlemi doğrulayarak güven ihtiyacını en aza indirir ve en yüksek güvenliği sunar.
- Artan sayıda işlemle, tüm işlemlerin işlenmesi günler ila haftalar alabilir.
Tam snap senkronizasyonu
Snap senkronizasyonu tıpkı bir tam arşiv senkronizasyonu gibi zinciri blok blok doğrular; ancak başlangıç blokunda başlamak yerine, doğru blok zincirin bir parçası olduğu bilinen daha yakın tarihli bir "güvenilir" kontrol noktasında başlar. Düğüm belli bir yaştan daha yaşlı olan veriyi silerken periyodik kontrol noktaları kaydeder. Bu anlık çekimler sonsuza kadar veriyi depolamaya ihtiyaç duymaktansa durum verisinin ihtiyaç duyulduğunda yeniden oluşturulabilmesi için kullanılır.
- Ethereum ana ağında güncel olarak varsayılanda bulunan, en hızlı senkronizasyon stratejisi
- Güvenlikten ödün vermeden çok fazla disk kullanımı ve ağ bant genişliği tasarrufu sağlar
Snap senkronizasyonu hakkında daha fazlası(opens in a new tab)
Hafif senkronizasyon
Hafif istemci modu, tüm blok başlıklarını indirir, verileri bloklar ve bazılarını rastgele doğrular. Zincirin yalnızca ucunu, güvenilen kontrol noktasından senkronize eder.
- Geliştiricilere ve mutabakat mekanizmasına güvenerek, yalnızca en son durumu alır.
- İstemci, birkaç dakika içinde mevcut ağ durumuyla kullanıma hazırdır.
NB Hafif senkronizasyon henüz hisse ispatı Ethereum ile birlikte çalışmamaktadır - hafif sekronizasyonun yeni versiyonları yakında çıkarılacaktır!
Hafif istemciler hakkında daha fazlası
Fikir birliği katmanı senkronizasyon modları
Optimistik senkronizasyon
Optimistik senkronizasyon kayıt ile ve geriye dönük uyumlu olması için tasarlanan bir birleşim sonrası senkronizasyon stratejisidir, bu da yürütme düğümlerinin yerleşmiş yöntemlerle senkronize edilmesini sağlar. Yürütme motoru optimistik olarak işaret bloklarını tamamen doğrulamadan alabilir, son başı bulabilir ve yukardaki yöntemlerle zinciri senkronize etmeye başlayabilir. Sonrasında, yürütüm istemcisi yetiştiğinde, İşaret Zinciri'ndeki işlemlerin geçerliliğiyle ilgili olarak fikir birliği istemcisini bilgilendirecektir.
Optimistik senkronizasyon hakkında daha fazlası(opens in a new tab)
Kontrol noktası senkronizasyonu
Aynı zamanda zayıf öznellik senkronizasyonu olarak da bilinen kontrol noktası senkronizasyonu, İşaret Zinciri'nin senkronize edilmesi için üstün bir kullanıcı deneyimi oluşturmaktadır. İşaret Zinciri'nin senkronizasyonunu başlangıç yerine yakın tarihli bir zayıf öznellikten başlatan zayıf öznellik varsayımlarına dayanır. Kontrol noktası senkronizasyonu başlangıç senkronizasyon zamanını senkronize etmeye benzer güven varsayımları ile büyük oranda hızlandırır.
Pratikte, bu düğümünüzün yakın tarihli kesinleştirilmiş durumları indirmek için uzak bir servise bağlandığı anlamına gelir ve o noktadan sonra veri doğrulamaya devam eder. Veriyi sağlayan üçüncü şahısa güvenilir ve dikkatlice seçilmelidir.
Kontrol noktası senkronizasyonu(opens in a new tab) hakkında daha fazlası
Daha fazla bilgi
İnternette Ethereum istemcileri hakkında birçok bilgi var. İşte size yardımcı olabilecek birkaç kaynak.
- Ethereum 101 - 2. Bölüm - Düğümleri Anlamak(opens in a new tab) – Wil Barnes, 13 Şubat 2019
- Ethereum Tam Düğümlerini Çalıştırmak: Pek Motivasyonu Olmayanlar İçin Kılavuz(opens in a new tab) – Justin Leroux, 7 Kasım 2019
İlgili konular
İlgili öğreticiler
- Raspberry Pi 4'ünüzü, sadece MicroSD kartı flaşlayarak doğrulayıcı düğüme dönüştürün - Kurulum kılavuzu - Raspberry Pi 4'ünüzü flaşlayın, bir ethernet kablosu takın, SSD diskini bağlayın ve Raspberry Pi 4'ü yürütüm katmanını (Ana ağ) ve/veya fikir birliği katmanını (İşaret zinciri/doğrulayıcı) çalıştıran tam bir Ethereum düğümüne dönüştürmek için cihazı çalıştırın.