Skip to main content
Phương thức RPC getClusterNodes trả về danh sách tất cả các nút đã biết hiện đang tham gia cụm Solana. Thông tin này có thể hữu ích khi phân tích mạng, tìm các điểm cuối RPC thay thế hoặc tìm hiểu cấu trúc liên kết hiện tại của mạng từ góc nhìn của nút được truy vấn.

Các trường hợp sử dụng phổ biến

  • Phân tích cấu trúc liên kết mạng: Lấy thông tin tổng quan về các nút đã biết trong cụm, bao gồm khóa công khai và địa chỉ mạng của chúng (gossip, TPU, RPC).
  • Tìm điểm cuối RPC: Xác định các máy chủ RPC tiềm năng khác trong cụm (mặc dù tính khả dụng và giới hạn tốc độ có thể khác nhau).
  • Theo dõi phiên bản nút: Quan sát các phiên bản phần mềm đang chạy trên những nút khác nhau trong cụm.

Tham số yêu cầu

Phương thức này không nhận bất kỳ tham số nào.

Cấu trúc phản hồi

Trường result trong phản hồi JSON-RPC sẽ là một mảng các đối tượng. Mỗi đối tượng đại diện cho một nút và chứa các trường sau:
  • pubkey (string): Khóa công khai (danh tính) của nút, được mã hóa bằng base58.
  • gossip (string | null): Địa chỉ IP và cổng dành cho dịch vụ gossip của nút. Có thể là null nếu không khả dụng.
  • tpu (string | null): Địa chỉ IP và cổng dành cho Đơn vị xử lý giao dịch (TPU) của nút. Trường này được dùng để gửi giao dịch trực tiếp. Có thể là null.
  • rpc (string | null): Địa chỉ IP và cổng dành cho dịch vụ JSON-RPC của nút. Có thể là null nếu dịch vụ RPC không được bật hoặc không được nút này công bố.
  • version (string | null): Phiên bản phần mềm của nút. Có thể là null nếu không có thông tin phiên bản.
  • featureSet (u32 | null): Mã định danh duy nhất của bộ tính năng trên nút. Có thể là null.
  • shredVersion (u16 | null): Phiên bản của cấu trúc dữ liệu mà nút này sử dụng để lưu trữ và truyền các khối (shred). Có thể là null.

Ví dụ

1. Lấy tất cả các nút cụm đã biết

Ví dụ này truy xuất danh sách tất cả các nút mà điểm cuối RPC được truy vấn biết đến.

Mẹo dành cho nhà phát triển

  • Góc nhìn của nút: Danh sách trả về phản ánh các nút mà nút RPC cụ thể đang được truy vấn biết đến. Các nút RPC khác nhau có thể có góc nhìn hơi khác nhau về cụm, đặc biệt khi mạng đang thay đổi.
  • Tính khả dụng của RPC: Không phải mọi nút trong danh sách đều nhất thiết mở cổng RPC hoặc cho phép truy cập công khai. Trường rpc khác null cho biết một điểm cuối RPC đã được công bố, nhưng không đảm bảo khả năng truy cập hoặc hiệu năng.
  • Danh sách động: Cấu trúc liên kết của cụm có tính động. Các nút có thể tham gia và rời khỏi cụm, vì vậy danh sách có thể thay đổi theo thời gian.
  • Phản hồi lớn: Trên một mạng lớn như Mainnet Beta, phản hồi có thể khá dài và liệt kê nhiều nút.
Hướng dẫn này cung cấp thông tin cần thiết để sử dụng phương thức RPC getClusterNodes nhằm khám phá và tìm hiểu các nút trong một cụm Solana.