Solana Geyser gRPC - gRPC Latency Test
Bu kılavuz, Solana Geyser gRPC sunucusunun gecikmesini nasıl test edeceğinizi gösterecektir.
Ön Koşullar
SLV CLI'yi yükleyin:
bash
curl -fsSL https://storage.slv.dev/slv/install | shcurl -fsSL https://storage.slv.dev/slv/install | shgRPC Gecikmesini Test Edin
Aşağıdaki komutla Solana Geyser gRPC sunucusunun gecikmesini kolayca test edebilirsiniz:
bash
slv check grpc --help
Usage: slv check grpc
Version: 0.9.0
Description:
Check gRPC endpoint
Options:
-h, --help - Show this help.
--endpoint <endpoint> - gRPC endpoint URL
--token <token> - Token for authenticationslv check grpc --help
Usage: slv check grpc
Version: 0.9.0
Description:
Check gRPC endpoint
Options:
-h, --help - Show this help.
--endpoint <endpoint> - gRPC endpoint URL
--token <token> - Token for authenticationBir Geyser gRPC erişiminiz yoksa, lütfen Geyser gRPC Hızlı Başlangıç kılavuzuna bakın.
Gecikme Kontrolünü Çalıştırın
Paylaşılan bir endpoint'i doğrudan test etmek için, aşağıdaki komutu kendi endpoint'inizle çalıştırın:
bash
slv check grpc --endpoint <YOUR_ENDPOINT> --token noneslv check grpc --endpoint <YOUR_ENDPOINT> --token noneÖrnek:
bash
➜ ~ slv check grpc --endpoint http://grpc-ams1.erpc.global --token none
Checking gRPC endpoint: http://grpc-ams1.erpc.global
Current latency: 540 ms, slots: 0
Avg latency: 540 ms
Current latency: 962 ms, slots: 1
Avg latency: 751 ms
Current latency: 394 ms, slots: -1
Avg latency: 632 ms
Current latency: 776 ms, slots: 0
Avg latency: 668 ms
Current latency: 1157 ms, slots: 1
Avg latency: 765.8 ms
Current latency: 529 ms, slots: 0
Avg latency: 726.3333333333334 ms
Current latency: 891 ms, slots: 1
Avg latency: 749.8571428571429 ms
Current latency: 249 ms, slots: -1
Avg latency: 687.25 ms➜ ~ slv check grpc --endpoint http://grpc-ams1.erpc.global --token none
Checking gRPC endpoint: http://grpc-ams1.erpc.global
Current latency: 540 ms, slots: 0
Avg latency: 540 ms
Current latency: 962 ms, slots: 1
Avg latency: 751 ms
Current latency: 394 ms, slots: -1
Avg latency: 632 ms
Current latency: 776 ms, slots: 0
Avg latency: 668 ms
Current latency: 1157 ms, slots: 1
Avg latency: 765.8 ms
Current latency: 529 ms, slots: 0
Avg latency: 726.3333333333334 ms
Current latency: 891 ms, slots: 1
Avg latency: 749.8571428571429 ms
Current latency: 249 ms, slots: -1
Avg latency: 687.25 msTest daha sonra Geyser gRPC sunucusunun gecikmesini kontrol etmeye devam edecektir.
Testi
Ctrl + C tuşlarına basarak durdurabilirsiniz.Referans: gRPC Gecikmesini Anlamak
gRPC gecikmesini ölçerken, bir saniyenin üzerinde değerler görebilirsiniz. Bu başlangıçta "yavaş" gibi hissettirebilir, ancak Solana'nın blok zamanının yalnızca saniye düzeyinde kaydedildiğini—milisaniyelerin kesilip atıldığını—unutmayın.
Aynı Bölgede Bağlanma
İlk olarak, sunucunuzun gRPC endpoint'i ile aynı bölgede bulunduğundan emin olun. Örneğin,
grpc-ams1.erpc.global adresine bağlanıyorsanız, ağ gecikmesini en aza indirmek için sunucunuzu da Amsterdam'a yerleştirmelisiniz.Neden "1 Saniyenin Üzerinde" Gecikme Görebilirsiniz
Aslında 07:46:46.900'de gerçekleşen, ancak Solana'nın 07:46:46.000 olarak kaydettiği bir işlemi düşünün. Bunu 07:46:47.200'de alırsanız, basit bir hesaplama şunu verir:
text
(Receive Time) - (Block Time)
= 07:46:47.200 - 07:46:46.000
= 1.2 seconds(Receive Time) - (Block Time)
= 07:46:47.200 - 07:46:46.000
= 1.2 secondsİlk bakışta, bu 1.2 saniyelik bir gecikme gibi görünür. Ancak, işlem gerçekte 07:46:46.900'de gerçekleştiği için, asıl gecikme yalnızca yaklaşık 300ms'dir:
07:46:47.200 - 07:46:46.900 = 0.3 saniye.
Yaklaşık Değer Olarak 500ms Çıkarma
Solana en yakın saniyeye yuvarladığı için, işlemin o saniyenin tam olarak neresinde gerçekleştiğini bilemeyiz. Makul bir yaklaşım, bir orta nokta (500ms) varsaymaktır, böylece formül şöyle olur:
text
(Receive Time) - (Block Time + 0.5 seconds)(Receive Time) - (Block Time + 0.5 seconds)Mükemmel derecede kesin olmasa da, bu yöntem eksik milisaniye verilerini telafi etmeye yardımcı olarak gerçek gRPC gecikmesine daha yakın bir tahmin sağlar.
Bu hususları göz önünde bulundurarak, Solana Geyser gRPC gecikmesini daha doğru bir şekilde değerlendirebilirsiniz. Solana'daki saniye düzeyindeki zaman kaydı, olası yuvarlama farklılıklarını hesaba katmayı ve gerçek dünya performansını yansıtmak için doğru sunucu ile endpoint yerleşimini sağlamayı gerektirir.






