Geth ile bir hafif (light) düğüm nasıl çalıştırılır
Bir Ethereum düğümü çalıştırmak istiyor olabilirsiniz. Bunu yapmanın en kolay yollarından biri Geth'i indirmek, kurmak ve çalıştırmaktır. Geth ile bir hafif düğümü dakikalar içinde çalışır duruma getirebiliriz.
Hafif istemci, Ethereum durumuyla tam etkileşime izin verirken 400 Mb'den daha az depolama gerektirir. Hafif istemciler uzak eşlerden veri alır, bu nedenle bazı sorguların yanıtlanması diğer senkronizasyon modlarına kıyasla daha uzun sürebilir.
Farklı senkronizasyon modları arasındaki farkların açıklaması için düğüm ve istemci geliştirici belgelerimizi okuyun.
Kurun ve çalıştırın
İlk olarak, Geth'i kurun(opens in a new tab).
Geth'i kurduktan sonra, bir Terminal penceresinde aşağıdaki komutu çalıştırarak bir Ethereum düğümünü "hafif" modda çalıştırabilirsiniz:
geth --syncmode light
Geth başlatıldıktan sonra, "eşler" olarak bilinen Ethereum üzerindeki diğer düğümlere bağlanmaya başlayacak. Eşlerle bağlantı kurma süreci biraz zaman alabilir.
Geth düğümünüz yeterli sayıda eşe sahip olduğunda, zincirdeki yeni bloklardan başlıkları içe aktarır.
Yeni blok başlıklarının artık bir "yaşı" olmadığında Geth, zincirin başıyla senkronize edilir.
Düğümünüzü durdurma ve yeniden başlatma
CTRL+C tuşlarına basarak düğümünüzü istediğiniz zaman durdurabilirsiniz.Düğümü yeniden başlatırken, Geth'in düğümün son çalıştırılmasından bu yana oluşturulan blok başlıklarını indirmesi birkaç dakika sürecektir.
HTTP-RPC sunucusunu etkinleştir
HTTP-RPC sunucusunu etkinleştirmek, Ethereum düğümünüzü cüzdanlar, tarayıcı uzantıları veya özel yazılım kitaplıkları gibi diğer yazılımlara bağlamanıza olanak tanır.
Geth'i başlatırken aşağıdaki komutu çalıştırarak HTTP-RPC sunucusunu etkinleştirebilirsiniz:
geth --syncmode light --http
Etkinleştirildiğinde, curl http://127.0.0.1:8545
komutunu çalıştırın. Bu, hata bildirmemelidir.
Uzak bağlantılara izin verin
Uzak ana bilgisayarların düğümünüze bağlanmasına izin vermek için aşağıdaki komutla Geth'i başlatın:
1geth --syncmode light --http --http.addr 0.0.0.02
Not: Bu, güvenlik duvarı gibi yerel ana makinenize gelen istekleri engelleyen bir işlem olmadığını varsayar.
Geth JavaScript konsolu
Geth, düğümünüzle etkileşim kurmak için kullanabileceğiniz yerleşik bir JavaScript konsoluna ve web3js(opens in a new tab) adlı bir JavaScript API'sine sahiptir.
JavaScript konsolunu kullanmak için şunu çalıştırın:
geth attach
Bu konsol, Ethereum ile doğrudan etkileşime izin verir. Örneğin, eth.blockNumber
komutunu çalıştırmak, bilinen en son blok numarasını yazdıracaktır.
Tam web3js belgeleri(opens in a new tab)
Mainnet ve test ağları
Geth, düğümünüzü varsayılan olarak Ethereum Mainnet üzerinde çalıştırır.
Terminal'de aşağıdaki komutlardan birini çalıştırarak, genel test ağlarından birinde bir düğüm çalıştırmak için Geth'i kullanmak da mümkündür:
geth --syncmode light --ropstengeth --syncmode light --rinkebygeth --syncmode light --goerli
Blok zinciri ve EVM verileri nerede saklanıyor?
Geth'in ham blok zinciri verilerini depolamak için kullandığı dizin, işletim sisteminize bağlıdır. Geth'i çalıştırdıktan sonra şuna benzeyen bir mesaj bulmaya çalışın:
INFO [11-18|14:04:47] Allocated cache and file handles database=/Users/bgu/Library/Ethereum/testnet/geth/lightchaindata cache=768 handles=128
“database=”
ardındaki yol, blok zinciri verilerinin makinenizde nerede depolandığını size söyleyecektir. Tam bir düğüm çalıştırıyorsanız bu dizin, blok zincirine taahhüt edilmiş her blok hakkındaki tüm verileri içerecektir. Hafif bir düğüm çalıştırdığımız için bu dizin yalnızca blok başlıklarını içerir.
Bu noktada, buranın blok zincirinin en düşük seviyede yaşadığı yer olduğunu vurgulamakta fayda var. Blok zincirinin tam içeriği ve EVM durumu, Ethereum ağındaki her tam düğümde, bilgisayarınızdakine çok benzeyen dizinlerde depolanır.
Daha fazla okuma
Son düzenleme: , Invalid DateTime