Skip to main content
Mengoptimalkan penggunaan RPC dapat meningkatkan performa secara signifikan, mengurangi biaya, dan meningkatkan pengalaman pengguna. Panduan ini membahas teknik yang telah terbukti untuk interaksi RPC Solana yang efisien.

Mulai Cepat

Transaction Optimization

Optimalkan unit komputasi, biaya prioritas, dan pengiriman transaksi

Data Retrieval

Pola efisien untuk mengambil data akun dan program

Real-time Monitoring

Langganan WebSocket dan optimasi streaming data

Best Practices

Panduan performa dan pengelolaan sumber daya

Optimasi Transaksi

Pengelolaan Unit Komputasi

1. Lakukan simulasi untuk menentukan penggunaan aktual:
2. Tetapkan batas yang sesuai dengan margin:

Optimasi Biaya Prioritas

1. Dapatkan estimasi biaya dinamis:
2. Terapkan biaya prioritas:

Praktik Terbaik Pengiriman Transaksi

Optimasi Pengambilan Data

Metode Paginasi yang Disempurnakan (V2)

Untuk kueri data berskala besar, gunakan metode V2 baru dengan paginasi berbasis kursor:

⚡ Performance Boost

getProgramAccountsV2 dan getTokenAccountsByOwnerV2 memberikan peningkatan performa yang signifikan untuk aplikasi yang menangani set data besar:
  • Batas yang dapat dikonfigurasi: 1–10.000 akun per permintaan
  • Paginasi berbasis kursor: Mencegah timeout pada kueri besar
  • Pembaruan inkremental: Gunakan changedSinceSlot untuk sinkronisasi real-time
  • Penggunaan memori yang lebih baik: Streaming data alih-alih memuat semuanya sekaligus
Contoh: Kueri akun program yang efisien
Pembaruan inkremental untuk aplikasi real-time:

Optimasi Pengambilan Data

Kueri Akun yang Efisien

Pencarian Saldo Token

Riwayat Transaksi

Untuk mendapatkan riwayat lengkap suatu alamat, gunakan getTransactionsForAddress — metode eksklusif Helius yang mengembalikan data transaksi lengkap, termasuk aktivitas akun token terkait, dalam satu panggilan:

Riwayat Transfer

Jika Anda hanya memerlukan pergerakan token atau SOL — pembayaran, aktivitas portofolio, atau rekonsiliasi saldo — gunakan getTransfersByAddress (eksklusif Helius, memerlukan paket Developer atau yang lebih tinggi). Metode ini mengembalikan objek transfer terurai yang mudah dibaca, dengan pemilik, mint, jumlah, dan desimal yang sudah ditentukan, sehingga Anda tidak perlu mengurai transaksi sama sekali:
Aturan praktisnya: gunakan getTransactionsForAddress saat Anda memerlukan payload transaksi lengkap atau aktivitas selain transfer, dan gunakan getTransfersByAddress saat Anda memerlukan catatan transfer yang rapi untuk buku besar dan pelacakan pembayaran.

Pemantauan Real-Time

Langganan Akun

Pemantauan Akun Program

Pemantauan Transaksi

Pola Tingkat Lanjut

Logika Percobaan Ulang Cerdas

Pemrosesan Hemat Memori

Pengumpulan Koneksi

Pemantauan Performa

Lacak Penggunaan RPC

Praktik Terbaik

Tingkat Komitmen

  • Gunakan untuk: Langganan WebSocket, pembaruan real-time
  • Latensi: ~400 md
  • Keandalan: Baik untuk sebagian besar aplikasi

Pengelolaan Sumber Daya

Penanganan Kesalahan

Kesalahan Umum yang Harus Dihindari

Hindari kesalahan umum berikut:
  • Melakukan polling alih-alih menggunakan langganan WebSocket
  • Mengambil data akun lengkap ketika hanya data parsial yang diperlukan
  • Tidak menggunakan operasi batch untuk beberapa kueri
  • Mengabaikan batas laju dan tidak menerapkan logika percobaan ulang yang tepat
  • Menggunakan komitmen finalized ketika confirmed sudah memadai
  • Tidak menutup langganan sehingga menyebabkan kebocoran memori

Metode Terkait

Teknik optimasi dalam panduan ini merujuk pada metode WebSocket dan RPC berikut:

getTransactionsForAddress

Riwayat transaksi lengkap dengan dukungan pemfilteran, pengurutan, dan akun token (eksklusif Helius)

getTransfersByAddress

Riwayat transfer token dan SOL yang telah diurai untuk pembayaran dan rekonsiliasi (eksklusif Helius)

getTransaction

Ambil detail transaksi lengkap berdasarkan tanda tangan

getProgramAccounts

Ambil semua akun yang dimiliki oleh suatu program

getTokenAccountsByOwner

Dapatkan akun token untuk dompet

getMultipleAccountsInfo

Ambil detail beberapa akun secara batch

getAccountInfo

Dapatkan informasi tentang satu akun

accountSubscribe

Berlangganan perubahan akun melalui WebSocket

programSubscribe

Berlangganan perubahan akun program melalui WebSocket

logsSubscribe

Berlangganan log transaksi melalui WebSocket

Ringkasan

Dengan menerapkan teknik optimasi ini, Anda dapat mencapai:
  • Pengurangan 60–90% dalam volume panggilan API
  • Latensi yang jauh lebih rendah untuk operasi real-time
  • Penggunaan bandwidth yang lebih rendah melalui kueri yang ditargetkan
  • Ketahanan terhadap kesalahan yang lebih baik dengan logika percobaan ulang cerdas
  • Biaya operasional yang lebih rendah melalui penggunaan sumber daya yang efisien

Next Steps

Siap menerapkan optimasi ini? Lihat Panduan Optimasi Transaksi kami untuk mempelajari praktik terbaik khusus transaksi.