Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
Bu sayfa yapay zekâ tarafından otomatik olarak çevrilmiştir. İngilizce sürüm esas alınır.İngilizce sürümü görüntüle →
Solana işlemi, atom şeklinde yürütülen bir talimat listesidir. İşlem yapısını anlamak — talimatlar, hesaplar, imzalayanlar, bilişim bütçesi — Raydium ile herhangi bir şey inşa etmek, hata ayıklamak veya optimize etmek için ön koşuldur. Bu sayfa yapıyı, onu sınırlayan limitleri ve iki ücret kategorisinin (Solana ağ ücretleri, Raydium protokol ücretleri) gerçek bir swapda nasıl toplandığını kapsar.
İşlem anatomisi
Solana işleminin üç temel bileşeni vardır:- Message: talimatların sıralı listesi, referans aldıkları hesaplar ve son blockhash.
- Signatures: imzalayanlar başına bir tane, işlemin yetkilendirildiğini doğrular.
- Recent blockhash: işlemin yakın zamanda yapıldığını ispatlar; eski blockhash’e sahip işlemler (>150 slot eski) reddedilir.
Talimatlar
Bir talimat belirtir:program_id— çağırılacak program.accounts— programın erişebileceği hesaplar (ve bunların yazılabilir/imzalayan bayrakları).data— program tarafından yorumlanan opak baytlar.
ComputeBudget::SetComputeUnitLimit— varsayılan CU limitini yükseltin.ComputeBudget::SetComputeUnitPrice— öncelik ücreti belirleyin.- İsteğe bağlı
CreateAssociatedTokenAccount— kullanıcı birinin olmadığı takdirde çıkış ATA’sı oluşturun. Raydium::SwapBaseInput— swapı yürütün.- İsteğe bağlı
CloseAccount— sarılmış SOL ATA’sını kapatın.
raydium.trade.swap() aracılığıyla otomatik olarak paketler.
İşlemlerdeki hesaplar
İşlemdeki herhangi bir talimat tarafından dokunulan her hesap, işlemin hesap anahtarları listesinde bulunmalıdır. Her hesap şu şekilde işaretlenir:- İmzalayan / imzalayan olmayan: hesap sahibi işlemi imzalamalı mı?
- Yazılabilir / salt okunur: işlem hesabı değiştirebilir mi?
solana-fundamentals/account-model). Birden fazla tick dizisi geçişine sahip CLMM swapları 20+ olabilir.
İşlem boyutu limiti
Solana işlemleri imzalar, mesaj ve başlıklar dahil olmak üzere 1232 bayt ile sınırlandırır. Bu, karmaşık işlemler için tek en yaygın engeldir — Raydium’un multi-hop yönlendirmeli CLMM’si düzenli olarak bu limite karşı çıkar. Tipik ~1000 baytlık Raydium swapının dağılımı:| Bileşen | Boyut |
|---|---|
| İmza | 64 B |
| İmza sayısı | 1 B |
| İleti başlığı | 3 B |
| Blockhash | 32 B |
| Hesap anahtarları (13 × 32 B) | 416 B |
| Talimatlar (4 × ~100-150 B) | 400–600 B |
| Toplam | ~900–1100 B |
Address Lookup Tables (ALT)
ALT’ler bir işlemin 32 baytlık tam genel anahtar yerine yayımlanmış bir tabloya 1 baytlık bir dizin ile hesaplara başvurmasını sağlar. Bu bir işlemi önemli ölçüde sıkıştırır:- Doğrudan 20 hesaba başvuran bir işlem: ~640 B genel anahtarlar.
- ALT kullanan aynı işlem: ~20 B dizinler + ALT referansları.
Bilişim bütçesi
Her işlemin bir compute unit (CU) bütçesi vardır. Aşması yürütmeyi sonlandırır ve işlemi başarısız kılar.- Varsayılan: işlem başına 200.000 CU.
- Maksimum: işlem başına 1.400.000 CU (
ComputeBudget::SetComputeUnitLimitaracılığıyla yükseltilir). - Blok başına tavan: blok başına 48 milyon CU (protokol seviyesi).
integration-guides/priority-fee-tuning bkz.):
| Talimat | CU |
|---|---|
| CPMM swap | ~140.000 |
| CLMM swap (tick geçişi yok) | ~170.000 |
| CLMM swap (4 tick geçişi) | ~320.000 |
| Farm v6 stake | ~130.000 |
| CPMM havuz oluşturma | ~250.000 |
ComputeBudget aracılığıyla açık bir CU limiti belirleyin; aksi takdirde 200k varsayılanını alırsınız, bu çoğu Raydium talimatı için çok düşüktür.
Öncelik ücretleri
Temel işlem ücreti (imza başına 5000 lamport) ötesinde, doğrulayıcılar giderek öncelik ücretleri ödeyen işlemleri önceliklendiriyor: mikro lamport cinsinden CU başına bir bahşiş.integration-guides/priority-fee-tuning bkz.
Talimat sayısı ve hesap sayısı limitleri
1232 baytlık toplam limitin ötesinde:- İşlem başına maksimum hesap: 128.
- Talimat başına maksimum hesap (CPI): 64.
- İşlem başına maksimum talimat: hiç sınırı yok, yalnızca boyut sınırı ile sınırlandırılmış.
- Maksimum CPI derinliği: 4 (bir program başkasını çağırabilir, bu da başkasını çağırabilir, 4 seviye derin).
Raydium swapında ücret kategorileri
Bir kullanıcı swap işlemi iki kategorideki ücretleri öder:Solana ağ ücretleri
Doğrulayıcılara SOL cinsinden ödenir.- Temel imza ücreti: imza başına 5000 lamport. Neredeyse her zaman 1 imza = 0,000005 SOL.
- Öncelik ücreti: CU-fiyatı × CU-limit mikro lamportlarda. Tıkanıklığa göre değişir;
integration-guides/priority-fee-tuningbkz.
Raydium protokol ücretleri
Swap miktarından düşülür.- Swap ücreti: giriş yüzdesi (CPMM %0,25 tipik, CLMM %0,01–%1 katman başına). LP’ler ve protokol hedefleri arasında bölünmüş. Bkz.
ray/protocol-fees.
Örnek: CPMM %0,25 katmanı aracılığıyla $1000 USDC → SOL
| Ücret kategorisi | Miktar | Gider |
|---|---|---|
| Temel imza ücreti | 0,000005 SOL (~$0,0007) | Doğrulayıcı |
| Öncelik ücreti (10k µL × 300k CU) | 0,003 SOL (~$0,45) | Doğrulayıcı |
| CPMM swap ücreti (%0,25) | $2,50 | LP’ler + protokol |
| Toplam kullanıcı maliyeti | ~$2,95 |
Versioned işlemler
Solana’nın iki işlem biçimi vardır:- Legacy: orijinal biçim, ALT desteği yok.
- v0 (Versioned): ALT’leri destekler, gelecek sürümlere genişletilebilir.
Blockhash tazeliği
Bir işlem son ~150 slot (~60 saniye) içinden bir blockhash içermelidir. Bu pencere ötesinde, doğrulayıcılar onu reddederler. Yeniden deneme döngüleri için her yeniden denememde taze bir blockhash alın:integration-guides/priority-fee-tuning bkz.
Paralel yürütme
Solana, çok çekirdekli doğrulayıcılarda çakışmayan işlemleri paralel olarak yürütür. Her iki işlem de aynı hesabı yazarsa çakışırlar. Raydium için çıkarımlar:- Aynı havuzdaki iki swap paralel olarak yürütülemez — her ikisi de havuz durumunu yazar.
- Pool A’daki bir swap ve Pool B’deki bir swap, hesap listeleri çakışmazsa paralel olarak yürütülür.
- Salt okunan bir işlem aynı hesapta bir yazara hiçbir zaman engel olmaz (salt okunan kendisiyle eşzamanlıdır ancak yazma ile değil).
İşlem onay seviyeleri
Bir işlem gönderirken bir onay seviyesi seçersiniz:| Seviye | Bekleme | Son halya |
|---|---|---|
processed | ~400 ms | Sonlandırılmadı; geri alınabilir |
confirmed | ~1 s | Çoğunluk oyladı |
finalized | ~13 s | Çoğunluk köklendi |
confirmed standarttır. Büyük değeri işleyen işlemler için (havuz oluşturma, ödül doldurma), finalized daha güvenlidir.
Simülasyon
Solana, gönderilmeden önce bir işlemi simüle etmeyi destekler:getBestSwapInfo hesaplarken içeride simülasyon kullanır. Simülasyon ücretsiz değildir — RPC kapasitesi tüketir — ancak ücretini ödemeden önce hataları yakalar.
İşaretçiler
solana-fundamentals/account-model— işlemlerdeki hesaplar.solana-fundamentals/pdas-and-cpis— programların birbirini nasıl çağırdığı.integration-guides/priority-fee-tuning— CU limitlerini ve öncelik ücretlerini boyutlandırma.ray/protocol-fees— Raydium protokol ücret yapısı.


