Skip to content

metachris/go-ethutils

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
cmd
 
 
 
 
 
 
 
 
 
 
 
 

Go Ethereum Utilities

Helpers for working with Ethereum:

Links

Contents

Feedback


BlockWithTxReceipts

blockswithtx is used for concurrently fetching blocks and tx-receipts from a geth node.

Benchmarks - running on the same machine as the geth node:

# IPC connection with concurrency 1, 5, 10, 15
ipc+1x:  Processed 17773 transactions in 29.671 seconds (599.01 tx/sec)
ipc+5x:  Processed 17773 transactions in 7.453 seconds (2384.59 tx/sec)
ipc+10x: Processed 17773 transactions in 5.403 seconds (3289.71 tx/sec)
ipc+15x: Processed 17773 transactions in 4.631 seconds (3837.83 tx/sec)

# WebSocket connection with concurrency 1, 5, 10, 15
ws+1x:  Processed 17773 transactions in 29.784 seconds (596.74 tx/sec)
ws+5x:  Processed 17773 transactions in 8.380 seconds (2120.87 tx/sec)
ws+10x: Processed 17773 transactions in 5.763 seconds (3084.00 tx/sec)
ws+15x: Processed 17773 transactions in 4.842 seconds (3670.32 tx/sec)

# HTTP connection with concurrency 1, 5, 10, 15
http+1x:  Processed 17773 transactions in 33.829 seconds (525.39 tx/sec)
http+5x:  Processed 17773 transactions in 8.828 seconds (2013.30 tx/sec)
http+10x: Processed 17773 transactions in 5.814 seconds (3056.90 tx/sec)
http+15x: Processed 17773 transactions in 5.510 seconds (3225.56 tx/sec)

Over the network I could only get ~200 tx/sec.

Example code: cmd/benchmark-blockswithtx/main.go