برنامه نویسی

تجزیه کننده تراکنش های Solana: عملکرد بدون سرور Node.js در Vercel

در گستره دیجیتالی بلاک چین، جایی که هر بایت مهم است، ما قصد داریم تراکنش های سولانا را تجزیه و تحلیل کنیم و تراکنش های بیش از 100 SOL را جستجو کنیم. در اینجا نحوه انجام این کار با Node.js، استقرار به عنوان یک تابع بدون سرور در Vercel آمده است.

راه اندازی

ابتدا مطمئن شوید که Node.js و npm را روی دستگاه خود دارید. راه اندازی یک پروژه:

npm init -y
npm install @solana/web3.js
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کد معاملات سولانا

یک دایرکتوری به نام ایجاد کنید api و درون آن یک فایل solana-transactions.js:

// api/solana-transactions.js
import { Connection, PublicKey } from '@solana/web3.js';

export default async function handler(req, res) {
  const connection = new Connection('https://api.mainnet-beta.solana.com', 'confirmed');

  try {
    const latestBlock = await connection.getLatestBlockhashAndContext();
    const slot = latestBlock.context.slot;

    const blockData = await connection.getBlock(slot, { transactionDetails: "full" });

    const largeTransactions = blockData.transactions.filter(tx => {
      return tx.transaction.message.instructions.some(instruction => {
        if (instruction.parsed) {
          const { lamports } = instruction.parsed.info;
          return lamports && lamports >= 100 * 1e9; // Over 100 SOL
        }
        return false;
      });
    });

    const result = largeTransactions.map(tx => ({
      signature: tx.transaction.signatures[0],
      amount: tx.transaction.message.instructions[0].parsed.info.lamports / 1e9, // SOL conversion
      source: tx.transaction.message.instructions[0].parsed.info.source,
      destination: tx.transaction.message.instructions[0].parsed.info.destination
    }));

    res.status(200).json(result);
  } catch (error) {
    console.error(error);
    res.status(500).json({ error: 'Failed to fetch or process transactions' });
  }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استقرار Vercel

Vercel را با vercel.json در ریشه پروژه شما:

{
  "version": 2,
  "routes": [
    {
      "src": "/api/(.*)",
      "dest": "api/$1"
    }
  ]
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

a اضافه کنید build اسکریپت در package.json در صورت نیاز:

{
  "scripts": {
    "build": "echo 'No build step needed'"
  }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

استقرار با استفاده از Vercel CLI:

vercel login
vercel
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نتیجه

این تابع، پس از استقرار در Vercel، آخرین بلوک Solana را تجزیه و تحلیل می کند و تراکنش های بیش از 100 SOL را ثبت می کند. این یک راه ساده و در عین حال مؤثر برای نظارت بر تراکنش‌های با ارزش بالا بدون بار نگهداری از سرور است.

ملاحظات

  • عملکرد: نتایج حافظه پنهان برای کاهش تماس های API.
  • امنیت: خطاها را با ظرافت مدیریت کنید و نرخ درخواست را محدود کنید.
  • مقیاس پذیری: از محدودیت های عملکرد بدون سرور Vercel آگاه باشید.

در دریای وسیع داده های بلاک چین، این ابزار به عنوان سکسانت شما عمل می کند و با سادگی و کارایی فناوری بدون سرور در Vercel، شما را به تراکنش های قابل توجهی راهنمایی می کند.



وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا