Solana RPC
Archive Method
Only on the full archive nodes. Complex queries might take longer and incur additional cost
How to Use It
// yarn add @tatumio/tatum
import { TatumSDK, Solana, Network } from '@tatumio/tatum'
const tatum = (await TatumSDK.init) < Solana > { network: Network.SOLANA }
const res = await tatum.rpc.getRecentPerformanceSamples(limit)
await tatum.destroy() // Destroy Tatum SDK - needed for stopping background jobs
Overview
The getRecentPerformanceSamples
method returns a list of recent performance samples, in reverse slot order. Performance samples are taken every 60 seconds and include the number of transactions and slots that occur in a given time window. This data can be used to monitor network performance and understand the activity within the Solana network.
Parameters
limit
(usize, optional): The number of samples to return (maximum 720).
Return Object
The result will be an array of objects with the following fields:
slot
: Slot in which sample was taken at.numTransactions
: Number of transactions in sample.numSlots
: Number of slots in sample.samplePeriodSecs
: Number of seconds in a sample window.numNonVoteTransaction
: Number of non-vote transactions in sample.
Note: numNonVoteTransaction
is present starting with v1.15. To get the number of voting transactions, compute: numTransactions - numNonVoteTransaction.
JSON-RPC Request Example
{
"jsonrpc": "2.0",
"id": 1,
"method": "getRecentPerformanceSamples",
"params": [4]
}
JSON-RPC Response Example
{
"jsonrpc": "2.0",
"result": [
{
"numSlots": 126,
"numTransactions": 126,
"numNonVoteTransaction": 1,
"samplePeriodSecs": 60,
"slot": 348125
},
{
"numSlots": 126,
"numTransactions": 126,
"numNonVoteTransaction": 1,
"samplePeriodSecs": 60,
"slot": 347999
},
{
"numSlots": 125,
"numTransactions": 125,
"numNonVoteTransaction": 0,
"samplePeriodSecs": 60,
"slot": 347873
},
{
"numSlots": 125,
"numTransactions": 125,
"numNonVoteTransaction": 0,
"samplePeriodSecs": 60,
"slot": 347748
}
],
"id": 1
}