Updated on 2023-12-06 GMT+08:00

Client APIs

Introduction of Ethereum APIs: JSON-RPC API

Introduction of Go-Ethereum APIs: JSON-RPC Server

API Method

Throughput (Time/s)

4 vCPUs | 16 GB

8 vCPUs | 32 GB

16 vCPUs | 32 GB

debug_traceBlock

10

20

50

debug_traceBlockByHash

10

10

50

debug_traceBlockByNumber

10

10

15

debug_traceCall

1000

4000

10000

debug_traceTransaction

50

90

300

eth_blockNumber

7000

30000

60000

eth_call

2000

12000

30000

eth_chainId

3000

20000

50000

eth_createAccessList

200

300

500

eth_estimateGas

700

1500

5000

eth_feeHistory

The throughput is determined by multiplying BLOCKCOUNT and LEN(REWARDPERCENTILES). The following lists the throughputs for different multiplication results.

50: 2700

100: 2500

200: 2300

300: 2200

400: 1900

500: 1800

600: 1500

700: 1500

800: 1500

900: 1000

1000: 1000

2000: 700

3000: 600

5000: 400

10000: 200

The throughput is determined by multiplying BLOCKCOUNT and LEN(REWARDPERCENTILES). The following lists the throughputs for different multiplication results.

50: 22000

100: 20000

200: 10000

300: 9500

400: 9000

500: 8000

600: 7000

700: 6000

800: 5000

900: 5000

1000: 4000

2000: 3000

3000: 2000

5000: 1000

10000: 600

The throughput is determined by multiplying BLOCKCOUNT and LEN(REWARDPERCENTILES). The following lists the throughputs for different multiplication results.

50: 42000

100: 35000

200: 29000

300: 24000

400: 20000

500: 18000

600: 15000

700: 14000

800: 12000

900: 11000

1000: 10000

2000: 5000

3000: 3000

5000: 2000

10000: 1000

eth_gasPrice

3000

20000

40000

eth_getBalance

3000

15000

40000

eth_getBlockByHash

  • 200 if a complete block object is returned
  • 1500 if a complete block object is not returned
  • 600 if a complete block object is returned
  • 5000 if a complete block object is not returned
  • 1500 if a complete block object is returned
  • 16000 if a complete block object is not returned

eth_getBlockByNumber

  • 300 if a complete block object is returned
  • 1500 if a complete block object is not returned
  • 600 if a complete block object is returned
  • 5000 if a complete block object is not returned
  • 1500 if a complete block object is returned
  • 20000 if a complete block object is not returned

eth_getBlockTransactionCountByHash

3000

1000

40000

eth_getBlockTransactionCountByNumber

3000

20000

40000

eth_getCode

1000

4000

8000

eth_getFilterChanges

400

1000

2000

eth_getFilterLogs

50

1000

2000

eth_getLogs

40

100

200

eth_getProof

1000

1000

3000

eth_getStorageAt

3000

15000

40000

eth_getTransactionByBlockHashAndIndex

3000

15000

40000

eth_getTransactionByBlockNumberAndIndex

2500

15000

40000

eth_getTransactionByHash

600

1500

4000

eth_getTransactionCount

3000

15000

40000

eth_getTransactionReceipt

500

1500

3000

eth_getUncleByBlockHashAndIndex

3000

15000

40000

eth_getUncleByBlockNumberAndIndex

3000

15000

40000

eth_getUncleCountByBlockHash

3000

15000

40000

eth_getUncleCountByBlockNumber

3000

15000

40000

eth_getWork

100

2000

5500

eth_maxPriorityFeePerGas

3000

15000

40000

eth_newBlockFilter

600

800

1800

eth_newFilter

100

500

1000

eth_newPendingTransactionFilter

20

50

80

eth_sendRawTransaction

500

1000

2500

eth_subscribe

100

1000

1000

eth_syncing

3000

20000

50000

eth_uninstallFilter

500

2000

3000

eth_unsubscribe

100

1000

1000

net_listening

3000

20000

40000

net_version

3000

20000

40000

txpool_inspect

20

40

90

txpool_status

2000

8000

15000

web3_clientVersion

3000

20000

40000

web3_sha3

3000

20000

40000