رسوم المعاملات

تتطلب كل معاملة على سولانا رسوم معاملة، تُدفع بعملة SOL. تنقسم رسوم المعاملات إلى جزأين: الرسوم الأساسية ورسوم الأولوية. تعوض الرسوم الأساسية المدققين عن معالجة المعاملة. رسوم الأولوية هي رسوم اختيارية، لزيادة فرصة معالجة المعاملة من قبل القائد الحالي.

الرسوم الأساسية

تكلف كل معاملة 5000 لامبورت لكل توقيع مُضمّن. يتم دفع هذه الرسوم من قبل الموقّع الأول على المعاملة. فقط الحسابات المملوكة من قبل System Program يمكنها دفع رسوم المعاملات. يتم تقسيم الرسوم الأساسية كما يلي:

  • 50% يتم حرقها: نصف الرسوم يتم حرقها (إزالتها من إمدادات SOL المتداولة).
  • 50% يتم توزيعها: النصف الآخر يتم دفعه إلى المدقق الذي عالج المعاملة.

رسوم الأولوية

رسوم الأولوية هي رسوم اختيارية تُستخدم لزيادة فرصة معالجة معاملتك من قبل القائد الحالي (المدقق). يتلقى المدقق 100% من رسوم الأولوية. يمكن تحديد رسوم الأولوية عن طريق ضبط سعر وحدة الحوسبة computation unit (CU) وحد CU للمعاملة. (راجع دليل كيفية استخدام رسوم الأولوية لمزيد من التفاصيل حول رسوم الأولوية.)

يتم حساب رسوم الأولوية على النحو التالي:

Prioritization fee formula
Prioritization fee = CU limit * CU price

تُستخدم رسوم الأولوية لتحديد أولوية معاملتك، بالنسبة للمعاملات الأخرى. يتم حسابها باستخدام الصيغة التالية:

Transaction priority formula
Priority = (Prioritization fee + Base fee) / (1 + CU limit + Signature CUs + Write lock CUs)

حد وحدة الحوسبة

افتراضيًا، يتم تخصيص 200,000 وحدة حوسبة لكل تعليمة و1.4 مليون وحدة حوسبة لكل معاملة. يمكنك تغيير هذه الإعدادات الافتراضية عن طريق تضمين تعليمة SetComputeUnitLimit في معاملتك.

لحساب حد وحدات الحوسبة المناسب لمعاملتك، نوصي باتباع الخطوات التالية:

  1. قم بتقدير وحدات الحوسبة المطلوبة عن طريق محاكاة المعاملة
  2. أضف هامش أمان بنسبة 10% إلى هذا التقدير

يتم تحديد رسوم الأولوية من خلال حد وحدات الحوسبة المطلوبة للمعاملة، وليس العدد الفعلي لوحدات الحوسبة المستخدمة. إذا قمت بتعيين حد وحدات حوسبة مرتفع جدًا أو استخدمت المقدار الافتراضي، فقد تدفع مقابل وحدات حوسبة غير مستخدمة.

سعر وحدة الحوسبة

سعر وحدة الحوسبة هو مبلغ اختياري من مايكرو-لامبورت يُدفع مقابل كل وحدة حوسبة مطلوبة. يمكنك اعتبار سعر وحدة الحوسبة كإكرامية لتشجيع الـvalidator على إعطاء الأولوية لمعاملتك. لتعيين سعر وحدة الحوسبة، قم بتضمين تعليمات SetComputeUnitPrice في معاملتك.

سعر وحدة الحوسبة الافتراضي هو 0، مما يعني أن رسوم الأولوية الافتراضية هي أيضًا 0.

للمساعدة في تحديد أفضل سعر لوحدة الحوسبة لمعاملتك، راجع توصية سعر وحدة الحوسبة في الوقت الفعلي المدرجة في الجدول أدناه.

المزودواجهة برمجة تطبيقات رسوم الأولوية
Heliusالتوثيق
QuickNodeالتوثيق
Tritonالتوثيق

مثال

توضح الأمثلة أدناه كيفية تعيين حد وحدات الحوسبة وسعر وحدة الحوسبة على معاملة باستخدام مجموعات تطوير برمجيات سولانا.

مجموعة تطوير البرمجياتمرجع الشفرة المصدرية
@solana/web3.js (تايبسكريبت)ComputeBudgetProgram
solana-sdk (رست)ComputeBudgetInstruction
const limitInstruction = ComputeBudgetProgram.setComputeUnitLimit({
units: 300_000
});
const priceInstruction = ComputeBudgetProgram.setComputeUnitPrice({
microLamports: 1
});
import {
LAMPORTS_PER_SOL,
SystemProgram,
Transaction,
Keypair,
Connection,
ComputeBudgetProgram,
sendAndConfirmTransaction
} from "@solana/web3.js";
const connection = new Connection("http://localhost:8899", "confirmed");
const sender = Keypair.generate();
const recipient = new Keypair();
const airdropSignature = await connection.requestAirdrop(
sender.publicKey,
LAMPORTS_PER_SOL
);
await connection.confirmTransaction(airdropSignature, "confirmed");
// Create compute budget instructions
const limitInstruction = ComputeBudgetProgram.setComputeUnitLimit({
units: 300_000
});
const priceInstruction = ComputeBudgetProgram.setComputeUnitPrice({
microLamports: 1
});
const transferInstruction = SystemProgram.transfer({
fromPubkey: sender.publicKey,
toPubkey: recipient.publicKey,
lamports: 0.01 * LAMPORTS_PER_SOL
});
// Add the compute budget and transfer instructions to a new transaction
const transaction = new Transaction()
.add(limitInstruction)
.add(priceInstruction)
.add(transferInstruction);
const signature = await sendAndConfirmTransaction(connection, transaction, [
sender
]);
console.log("Transaction Signature:", signature);
Console
Click to execute the code.

Is this page helpful?

جدول المحتويات

تعديل الصفحة

تدار بواسطة

© 2025 مؤسسة سولانا.
جميع الحقوق محفوظة.