getBlockProduction menyediakan informasi tentang produksi blok dalam epok saat ini atau rentang slot tertentu. Metode ini dapat digunakan untuk mengambil data semua validator atau identitas validator tertentu. Informasi ini berguna untuk memantau kinerja validator dan memahami pola produksi blok di jaringan.
Kasus Penggunaan Umum
- Memantau Kinerja Validator: Lacak jumlah blok yang diproduksi dan slot pemimpin untuk validator tertentu.
- Menganalisis Kinerja Epok: Dapatkan gambaran umum produksi blok di seluruh validator dalam epok saat ini atau epok sebelumnya.
- Mengidentifikasi Slot yang Terlewat: Periksa apakah validator melewatkan slot pemimpin yang ditetapkan kepadanya.
- Memeriksa Kondisi Jaringan: Kumpulkan data tentang efisiensi produksi blok secara keseluruhan.
Parameter Permintaan
MetodegetBlockProduction menerima objek konfigurasi opsional dengan parameter berikut:
commitment(string, opsional): Menentukan tingkat komitmen yang akan digunakan untuk kueri. Jika dihilangkan, komitmen default node akan digunakan.range(object, opsional): Menentukan rentang slot yang akan dikueri.firstSlot(u64): Slot pertama yang informasi produksi bloknya akan diambil (inklusif).lastSlot(u64, opsional): Slot terakhir yang informasi produksi bloknya akan diambil (inklusif). Jika dihilangkan, produksi blok epok saat ini hingga slot terkini akan dikembalikan.
identity(string, opsional): Kunci publik identitas validator yang dikodekan dengan base58. Jika diberikan, respons hanya akan menyertakan informasi produksi blok untuk validator khusus ini. Jika dihilangkan, informasi untuk semua validator dalam rentang yang ditentukan (atau epok saat ini) akan dikembalikan.
identity atau range.firstSlot harus diberikan. Jika identity tidak diberikan, parameter range wajib diberikan.
Struktur Respons
Kolomresult dari respons JSON-RPC akan berupa objek yang berisi:
context(object):slot(u64): Slot saat informasi diambil.
value(object):byIdentity(object): Objek dengan kunci berupa string identitas validator (kunci publik yang dikodekan dengan base58), dan nilai berupa objek yang berisi:leaderSlots(u64): Jumlah slot pemimpin yang ditetapkan kepada validator ini dalam rentang/epok yang dikueri.blocksProduced(u64): Jumlah blok yang diproduksi oleh validator ini dalam rentang/epok yang dikueri.
range(object):firstSlot(u64): Slot pertama dalam rentang yang dikueri.lastSlot(u64): Slot terakhir dalam rentang yang dikueri.
Tips untuk Developer
- Pahami Batas Epok: Saat membuat kueri berdasarkan
identitytanparange, data yang dikembalikan mencakup epok saat ini hingga slot terbaru yang telah diproses oleh node. Jika Anda memerlukan data untuk epok sebelumnya secara penuh bagi validator tertentu, Anda perlu menentukanfirstSlotdanlastSlotuntuk epok tersebut. - Ketersediaan Data Node: Rentang data historis produksi blok dapat berbeda-beda antara node RPC. Rentang slot yang sangat lama mungkin tidak tersedia di semua node.
- Pemantauan Kinerja:
getBlockProductionpenting untuk membuat dasbor atau peringatan terkait waktu aktif validator dan tingkat keberhasilan produksi blok. - Menggabungkan dengan
getLeaderSchedule: Untuk analisis lebih mendalam, Anda dapat mengorelasikan datagetBlockProductiondengan keluarangetLeaderScheduleguna melihat slot pemimpin tertentu yang berhasil dibuat atau terlewat. - Identitas vs. Semua Validator: Kueri tanpa
identitydapat mengembalikan data dalam jumlah besar, terutama jikarangetidak ditentukan atau rentangrangeyang ditentukan terlalu luas. Perhatikan ukuran respons dan kebutuhan pemrosesan.
Contoh
1. Mendapatkan Produksi Blok untuk Epok Saat Ini (Semua Validator)
Contoh ini mengambil data produksi blok untuk semua validator dalam epok saat ini.2. Mendapatkan Produksi Blok untuk Validator Tertentu dalam Epok Saat Ini
Contoh ini mengambil data produksi blok untuk identitas validator tertentu dalam epok saat ini.3. Mendapatkan Produksi Blok untuk Rentang Slot dan Validator Tertentu
Contoh ini mengambil data produksi blok untuk validator tertentu dalam rentang slot yang telah ditentukan.getBlockProduction untuk menganalisis produksi blok di Solana.
Metode Terkait
getLeaderSchedule
Dapatkan jadwal pemimpin lengkap untuk dikorelasikan dengan data produksi
getVoteAccounts
Dapatkan informasi tentang semua validator pemberi suara