RpcAdapter
Varsayılan adaptör. Arka planda getProgramAccounts kullanır — ek kurulum veya API anahtarı gerekmez.
Kullanım
typescript
import { CurvhexORM } from '@curvhex/orm'
import { Connection } from '@solana/web3.js'
const orm = new CurvhexORM({
connection: new Connection('https://api.mainnet-beta.solana.com'),
programId: 'PROGRAM_ID',
models: { UserAccount },
// RpcAdapter varsayılandır — adaptör seçeneği gerekmez
})Nasıl Çalışır
Eşitlik filtreleri → memcmp: where içindeki eşitlik filtreleri memcmp kısıtlamalarına dönüştürülür — yalnızca eşleşen hesaplar aktarılır.
Aralık filtreleri → istemci taraflı: gt, gte, lt, lte, between, in, not hesaplar çekildikten sonra bellekte uygulanır.
Sıralama ve sayfalama: orderBy, take, skip çekildikten sonra istemci tarafında uygulanır.
Sınırlamalar
getProgramAccountsbirçok genel RPC uç noktasında devre dışı veya hız sınırlıdır. Özel bir RPC uç noktası kullan veyaHeliusAdapter'a geç.- Aralık sorguları tüm eşleşen hesapların indirilmesini gerektirir. Büyük veri setleri için
HeliusAdapterveyaPostgresAdapterkullan.
Önerilen RPC Uç Noktaları
| Sağlayıcı | Notlar |
|---|---|
| Helius | Yüksek hız limitleri, getProgramAccounts etkin |
| QuickNode | Güvenilir, hızlı |
| Triton | Kurumsal, RPC 2.0 desteği |