
Cách RPC trên Solana hoạt động
RPC trong lĩnh vực tiền mã hóa là gì?
Trong quá trình phát triển phần mềm truyền thống (web2), bạn thường lấy dữ liệu cần thiết thông qua API. Bạn có thể dùng API của Stripe để xử lý dữ liệu thanh toán, Twilio cho dữ liệu SMS, Bloomberg cho dữ liệu tài chính, Plaid cho dữ liệu ngân hàng, v.v.
Điểm đáng chú ý ở đây là dữ liệu bạn cần thường do các tổ chức tập trung nắm giữ hoặc kiểm soát.
Trong lĩnh vực tiền mã hóa, mọi dữ liệu bạn cần đều nằm trên chuỗi. Dữ liệu hoàn toàn không cần cấp quyền và bất kỳ ai cũng có thể xem cũng như sử dụng. Vậy làm thế nào để truy xuất dữ liệu? Bằng RPC.
RPC — về mặt kỹ thuật là viết tắt của Remote Procedure Calls — thường được dùng như cách gọi ngắn gọn của các nút RPC. Đây là những nút tham gia vào mạng blockchain và cung cấp các phương thức (được gọi là remote procedure calls) để nhà phát triển gọi.
RPC hoạt động như thế nào trên Solana?
Để Solana hoạt động, cần có một mạng lưới nút phân tán chạy một hoặc nhiều phần mềm máy khách của nền tảng.
Các nút này có thể được chia thành hai loại: nút xác thực và RPC.
Cả hai loại nút này đều có một điểm chung quan trọng: chúng liên tục theo dõi blockchain và lưu trữ dữ liệu (hoặc trạng thái) mới nhất.
Tuy nhiên, giữa chúng có một điểm khác biệt cốt lõi.
Nút xác thực là các nút bỏ phiếu (ví dụ: "đúng, khối này hợp lệ") và tham gia vào quá trình đồng thuận.
RPC là các nút không bỏ phiếu — nhưng xử lý yêu cầu tương tác với dữ liệu trên chuỗi.
Cấu hình này không phổ biến trên các blockchain khác như Ethereum, nơi nút xác thực và nút RPC thường là một.
Khi thực hiện một lệnh gọi RPC, bạn đang gọi một thủ tục/hàm trên một nút tham gia vào blockchain. Vì tham gia vào mạng, nút này nắm được dữ liệu mới nhất và có thể cung cấp dữ liệu đó theo yêu cầu.
Cách làm việc với RPC trên Solana
Để lấy dữ liệu từ blockchain Solana, bạn phải gửi yêu cầu JSON-RPC đến một nút RPC đang tham gia vào mạng.
Một yêu cầu JSON-RPC điển hình có thể có dạng như sau:
curl http://localhost:8899 -X POST -H "Content-Type: application/json" -d ' { "jsonrpc": "2.0","id":1,"method":"getBlock", "params": [430, { "encoding": "json", "maxSupportedTransactionVersion":0, "transactionDetails":"full", "rewards":false } ] }Yêu cầu này đề nghị nút RPC tại localhost:8899 thực thi phương thức RPC getBlock. Nút biết phải làm gì khi nhận được yêu cầu này vì đang chạy phần mềm máy khách của blockchain Solana.
Trên thực tế, hầu như không ai làm việc trực tiếp với các yêu cầu JSON-RPC như thế này (dù bạn hoàn toàn có thể!). Hầu hết nhà phát triển thích làm việc với các máy khách RPC hơn. Thư viện được sử dụng phổ biến nhất là Solana Web3 JS, có thể tìm thấy tại đây. Để xem danh sách đầy đủ các phương thức JSON RPC có trên Solana, vui lòng đọc tài liệu của chúng tôi.
Cách bắt đầu với RPC
RPC vô cùng quan trọng — nếu không có chúng, bạn hoàn toàn không thể làm việc với blockchain. Vì vậy, có những công ty chuyên tối ưu trải nghiệm RPC. Các máy này được sử dụng với cường độ rất cao, nên khả năng hoạt động tốt dưới tải lớn là vô cùng quan trọng. Một nhà cung cấp RPC tốt phải đáng tin cậy, duy trì hiệu suất ổn định và cung cấp các chỉ số để người dùng cuối theo dõi quy luật sử dụng theo thời gian.
Tại Helius, chúng tôi là những kỹ sư chuyên về Solana và đặt sứ mệnh mang đến trải nghiệm RPC tốt nhất có thể cho mọi nhà phát triển.
Bạn có thể bắt đầu miễn phí chỉ với hai lần nhấp, không cần đăng ký bằng email hay thẻ tín dụng, tại đây.
Bài viết này là phần giới thiệu rất ngắn gọn, thân thiện với người mới bắt đầu về RPC trên Solana. Có lẽ bạn đã biết khá nhiều thông tin trong số này. Tiếp theo, chúng ta sẽ tìm hiểu về cách tối ưu RPC, các điểm cần lưu ý và một số chủ đề nâng cao hơn — cảm ơn bạn đã đọc!
Bài viết liên quan
Đăng ký nhận tin từ Helius
Luôn cập nhật những thông tin mới nhất về phát triển Solana và nhận thông báo khi chúng tôi đăng bài


