full benchmark run

This commit is contained in:
2025-11-19 12:22:04 +00:00
parent be6cd8c740
commit f89f41b8c4
9 changed files with 1729 additions and 0 deletions

View File

@@ -0,0 +1,176 @@
================================================================
NOSTR RELAY BENCHMARK AGGREGATE REPORT
================================================================
Generated: 2025-11-19T12:08:43+00:00
Benchmark Configuration:
Events per test: 50000
Concurrent workers: 24
Test duration: 60s
Relays tested: 8
================================================================
SUMMARY BY RELAY
================================================================
Relay: next-orly-badger
----------------------------------------
Status: COMPLETED
Events/sec: 17949.86
Events/sec: 6293.77
Events/sec: 17949.86
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.089014ms
Bottom 10% Avg Latency: 552.633µs
Avg Latency: 749.292µs
P95 Latency: 1.801326ms
P95 Latency: 1.544064ms
P95 Latency: 797.32µs
Relay: next-orly-dgraph
----------------------------------------
Status: COMPLETED
Events/sec: 17627.19
Events/sec: 6241.01
Events/sec: 17627.19
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.103766ms
Bottom 10% Avg Latency: 537.227µs
Avg Latency: 973.956µs
P95 Latency: 1.895983ms
P95 Latency: 1.938364ms
P95 Latency: 839.77µs
Relay: next-orly-neo4j
----------------------------------------
Status: COMPLETED
Events/sec: 15536.46
Events/sec: 6269.18
Events/sec: 15536.46
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.414281ms
Bottom 10% Avg Latency: 704.384µs
Avg Latency: 919.794µs
P95 Latency: 2.486204ms
P95 Latency: 1.842478ms
P95 Latency: 828.598µs
Relay: khatru-sqlite
----------------------------------------
Status: COMPLETED
Events/sec: 17237.90
Events/sec: 6137.41
Events/sec: 17237.90
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.195398ms
Bottom 10% Avg Latency: 614.1µs
Avg Latency: 967.476µs
P95 Latency: 2.00684ms
P95 Latency: 2.046996ms
P95 Latency: 843.455µs
Relay: khatru-badger
----------------------------------------
Status: COMPLETED
Events/sec: 16911.23
Events/sec: 6231.83
Events/sec: 16911.23
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.187112ms
Bottom 10% Avg Latency: 540.572µs
Avg Latency: 957.9µs
P95 Latency: 2.183304ms
P95 Latency: 1.888493ms
P95 Latency: 824.399µs
Relay: relayer-basic
----------------------------------------
Status: COMPLETED
Events/sec: 17836.39
Events/sec: 6270.82
Events/sec: 17836.39
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.081434ms
Bottom 10% Avg Latency: 525.619µs
Avg Latency: 951.65µs
P95 Latency: 1.853627ms
P95 Latency: 1.779976ms
P95 Latency: 831.883µs
Relay: strfry
----------------------------------------
Status: COMPLETED
Events/sec: 16470.06
Events/sec: 6004.96
Events/sec: 16470.06
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.261656ms
Bottom 10% Avg Latency: 566.551µs
Avg Latency: 1.02418ms
P95 Latency: 2.241835ms
P95 Latency: 2.314062ms
P95 Latency: 821.493µs
Relay: nostr-rs-relay
----------------------------------------
Status: COMPLETED
Events/sec: 16764.35
Events/sec: 6300.71
Events/sec: 16764.35
Success Rate: 100.0%
Success Rate: 100.0%
Success Rate: 100.0%
Avg Latency: 1.245012ms
Bottom 10% Avg Latency: 614.335µs
Avg Latency: 869.47µs
P95 Latency: 2.151312ms
P95 Latency: 1.707251ms
P95 Latency: 816.334µs
================================================================
DETAILED RESULTS
================================================================
Individual relay reports are available in:
- /reports/run_20251119_114143/khatru-badger_results.txt
- /reports/run_20251119_114143/khatru-sqlite_results.txt
- /reports/run_20251119_114143/next-orly-badger_results.txt
- /reports/run_20251119_114143/next-orly-dgraph_results.txt
- /reports/run_20251119_114143/next-orly-neo4j_results.txt
- /reports/run_20251119_114143/nostr-rs-relay_results.txt
- /reports/run_20251119_114143/relayer-basic_results.txt
- /reports/run_20251119_114143/strfry_results.txt
================================================================
BENCHMARK COMPARISON TABLE
================================================================
Relay Status Peak Tput/s Avg Latency Success Rate
---- ------ ----------- ----------- ------------
next-orly-badger OK 17949.86 1.089014ms 100.0%
next-orly-dgraph OK 17627.19 1.103766ms 100.0%
next-orly-neo4j OK 15536.46 1.414281ms 100.0%
khatru-sqlite OK 17237.90 1.195398ms 100.0%
khatru-badger OK 16911.23 1.187112ms 100.0%
relayer-basic OK 17836.39 1.081434ms 100.0%
strfry OK 16470.06 1.261656ms 100.0%
nostr-rs-relay OK 16764.35 1.245012ms 100.0%
================================================================
End of Report
================================================================

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_khatru-badger_8
Events: 50000, Workers: 24, Duration: 1m0s
1763553313325488 migrating to version 1... /build/pkg/database/migrations.go:66
1763553313325546 migrating to version 2... /build/pkg/database/migrations.go:73
1763553313325642 migrating to version 3... /build/pkg/database/migrations.go:80
1763553313325681 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763553313325693 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763553313325710 migrating to version 4... /build/pkg/database/migrations.go:87
1763553313325715 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763553313325728 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763553313325733 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:55:13 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:55:13 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.956615141s
Events/sec: 16911.23
Avg latency: 1.187112ms
P90 latency: 1.81316ms
P95 latency: 2.183304ms
P99 latency: 3.349323ms
Bottom 10% Avg latency: 540.572µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 287.79724ms
Burst completed: 5000 events in 321.810731ms
Burst completed: 5000 events in 311.674153ms
Burst completed: 5000 events in 318.798198ms
Burst completed: 5000 events in 315.884463ms
Burst completed: 5000 events in 315.046268ms
Burst completed: 5000 events in 302.527406ms
Burst completed: 5000 events in 273.316933ms
Burst completed: 5000 events in 286.042768ms
Burst completed: 5000 events in 284.71424ms
Burst test completed: 50000 events in 8.023322579s, errors: 0
Events/sec: 6231.83
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.46325201s
Combined ops/sec: 2043.88
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 419454 queries in 1m0.005159657s
Queries/sec: 6990.30
Avg query latency: 1.572558ms
P95 query latency: 6.287512ms
P99 query latency: 10.153208ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 330203 operations (280203 queries, 50000 writes) in 1m0.002743998s
Operations/sec: 5503.13
Avg latency: 1.34275ms
Avg query latency: 1.310187ms
Avg write latency: 1.52523ms
P95 latency: 3.461585ms
P99 latency: 6.077333ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.956615141s
Total Events: 50000
Events/sec: 16911.23
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 151 MB
Avg Latency: 1.187112ms
P90 Latency: 1.81316ms
P95 Latency: 2.183304ms
P99 Latency: 3.349323ms
Bottom 10% Avg Latency: 540.572µs
----------------------------------------
Test: Burst Pattern
Duration: 8.023322579s
Total Events: 50000
Events/sec: 6231.83
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 294 MB
Avg Latency: 957.9µs
P90 Latency: 1.601517ms
P95 Latency: 1.888493ms
P99 Latency: 2.786201ms
Bottom 10% Avg Latency: 300.141µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.46325201s
Total Events: 50000
Events/sec: 2043.88
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 134 MB
Avg Latency: 355.539µs
P90 Latency: 738.896µs
P95 Latency: 824.399µs
P99 Latency: 1.026233ms
Bottom 10% Avg Latency: 908.51µs
----------------------------------------
Test: Query Performance
Duration: 1m0.005159657s
Total Events: 419454
Events/sec: 6990.30
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 145 MB
Avg Latency: 1.572558ms
P90 Latency: 4.677831ms
P95 Latency: 6.287512ms
P99 Latency: 10.153208ms
Bottom 10% Avg Latency: 7.079439ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.002743998s
Total Events: 330203
Events/sec: 5503.13
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 153 MB
Avg Latency: 1.34275ms
P90 Latency: 2.700438ms
P95 Latency: 3.461585ms
P99 Latency: 6.077333ms
Bottom 10% Avg Latency: 4.104549ms
----------------------------------------
Report saved to: /tmp/benchmark_khatru-badger_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_khatru-badger_8/benchmark_report.adoc
RELAY_NAME: khatru-badger
RELAY_URL: ws://khatru-badger:3334
TEST_TIMESTAMP: 2025-11-19T11:58:30+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_khatru-sqlite_8
Events: 50000, Workers: 24, Duration: 1m0s
1763553110724756 migrating to version 1... /build/pkg/database/migrations.go:66
1763553110724837 migrating to version 2... /build/pkg/database/migrations.go:73
1763553110724861 migrating to version 3... /build/pkg/database/migrations.go:80
1763553110724868 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763553110724878 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763553110724898 migrating to version 4... /build/pkg/database/migrations.go:87
1763553110724903 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763553110724914 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763553110724919 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:51:50 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:51:50 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.900585812s
Events/sec: 17237.90
Avg latency: 1.195398ms
P90 latency: 1.712921ms
P95 latency: 2.00684ms
P99 latency: 2.885171ms
Bottom 10% Avg latency: 614.1µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 291.368683ms
Burst completed: 5000 events in 312.117244ms
Burst completed: 5000 events in 305.378768ms
Burst completed: 5000 events in 311.130855ms
Burst completed: 5000 events in 312.056757ms
Burst completed: 5000 events in 315.153831ms
Burst completed: 5000 events in 355.239066ms
Burst completed: 5000 events in 374.509513ms
Burst completed: 5000 events in 287.00433ms
Burst completed: 5000 events in 277.538432ms
Burst test completed: 50000 events in 8.146754891s, errors: 0
Events/sec: 6137.41
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.561981494s
Combined ops/sec: 2035.67
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 416015 queries in 1m0.003485405s
Queries/sec: 6933.18
Avg query latency: 1.581687ms
P95 query latency: 6.345186ms
P99 query latency: 10.34128ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 320691 operations (270691 queries, 50000 writes) in 1m0.002515174s
Operations/sec: 5344.63
Avg latency: 1.418833ms
Avg query latency: 1.379991ms
Avg write latency: 1.629117ms
P95 latency: 3.787908ms
P99 latency: 6.652821ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.900585812s
Total Events: 50000
Events/sec: 17237.90
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 152 MB
Avg Latency: 1.195398ms
P90 Latency: 1.712921ms
P95 Latency: 2.00684ms
P99 Latency: 2.885171ms
Bottom 10% Avg Latency: 614.1µs
----------------------------------------
Test: Burst Pattern
Duration: 8.146754891s
Total Events: 50000
Events/sec: 6137.41
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 328 MB
Avg Latency: 967.476µs
P90 Latency: 1.676611ms
P95 Latency: 2.046996ms
P99 Latency: 3.51994ms
Bottom 10% Avg Latency: 290.612µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.561981494s
Total Events: 50000
Events/sec: 2035.67
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 170 MB
Avg Latency: 358.339µs
P90 Latency: 746.25µs
P95 Latency: 843.455µs
P99 Latency: 1.070156ms
Bottom 10% Avg Latency: 926.823µs
----------------------------------------
Test: Query Performance
Duration: 1m0.003485405s
Total Events: 416015
Events/sec: 6933.18
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 129 MB
Avg Latency: 1.581687ms
P90 Latency: 4.712679ms
P95 Latency: 6.345186ms
P99 Latency: 10.34128ms
Bottom 10% Avg Latency: 7.16149ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.002515174s
Total Events: 320691
Events/sec: 5344.63
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 136 MB
Avg Latency: 1.418833ms
P90 Latency: 2.888306ms
P95 Latency: 3.787908ms
P99 Latency: 6.652821ms
Bottom 10% Avg Latency: 4.474409ms
----------------------------------------
Report saved to: /tmp/benchmark_khatru-sqlite_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_khatru-sqlite_8/benchmark_report.adoc
RELAY_NAME: khatru-sqlite
RELAY_URL: ws://khatru-sqlite:3334
TEST_TIMESTAMP: 2025-11-19T11:55:08+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,195 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_next-orly-badger_8
Events: 50000, Workers: 24, Duration: 1m0s
1763552503625884 migrating to version 1... /build/pkg/database/migrations.go:66
1763552503625955 migrating to version 2... /build/pkg/database/migrations.go:73
1763552503625976 migrating to version 3... /build/pkg/database/migrations.go:80
1763552503625981 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763552503625991 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763552503626007 migrating to version 4... /build/pkg/database/migrations.go:87
1763552503626012 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763552503626026 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763552503626033 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:41:43 INFO: Extracted embedded libsecp256k1 to /tmp/orly-libsecp256k1/libsecp256k1.so
2025/11/19 11:41:43 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:41:43 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.785536478s
Events/sec: 17949.86
Avg latency: 1.089014ms
P90 latency: 1.55218ms
P95 latency: 1.801326ms
P99 latency: 2.589579ms
Bottom 10% Avg latency: 552.633µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 317.450827ms
Burst completed: 5000 events in 281.729068ms
Burst completed: 5000 events in 296.735543ms
Burst completed: 5000 events in 299.018917ms
Burst completed: 5000 events in 266.294256ms
Burst completed: 5000 events in 298.28913ms
Burst completed: 5000 events in 342.863483ms
Burst completed: 5000 events in 278.70182ms
Burst completed: 5000 events in 290.619707ms
Burst completed: 5000 events in 266.326046ms
Burst test completed: 50000 events in 7.944358646s, errors: 0
Events/sec: 6293.77
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.356991604s
Combined ops/sec: 2052.80
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 437548 queries in 1m0.00346203s
Queries/sec: 7292.05
Avg query latency: 1.484983ms
P95 query latency: 5.829694ms
P99 query latency: 9.624546ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 328438 operations (278438 queries, 50000 writes) in 1m0.00427172s
Operations/sec: 5473.58
Avg latency: 1.350439ms
Avg query latency: 1.327273ms
Avg write latency: 1.479447ms
P95 latency: 3.495151ms
P99 latency: 5.959117ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.785536478s
Total Events: 50000
Events/sec: 17949.86
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 155 MB
Avg Latency: 1.089014ms
P90 Latency: 1.55218ms
P95 Latency: 1.801326ms
P99 Latency: 2.589579ms
Bottom 10% Avg Latency: 552.633µs
----------------------------------------
Test: Burst Pattern
Duration: 7.944358646s
Total Events: 50000
Events/sec: 6293.77
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 364 MB
Avg Latency: 749.292µs
P90 Latency: 1.280402ms
P95 Latency: 1.544064ms
P99 Latency: 2.361203ms
Bottom 10% Avg Latency: 266.475µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.356991604s
Total Events: 50000
Events/sec: 2052.80
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 181 MB
Avg Latency: 348.627µs
P90 Latency: 716.516µs
P95 Latency: 797.32µs
P99 Latency: 974.468µs
Bottom 10% Avg Latency: 896.226µs
----------------------------------------
Test: Query Performance
Duration: 1m0.00346203s
Total Events: 437548
Events/sec: 7292.05
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 130 MB
Avg Latency: 1.484983ms
P90 Latency: 4.34872ms
P95 Latency: 5.829694ms
P99 Latency: 9.624546ms
Bottom 10% Avg Latency: 6.619683ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.00427172s
Total Events: 328438
Events/sec: 5473.58
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 119 MB
Avg Latency: 1.350439ms
P90 Latency: 2.752967ms
P95 Latency: 3.495151ms
P99 Latency: 5.959117ms
Bottom 10% Avg Latency: 4.092929ms
----------------------------------------
Report saved to: /tmp/benchmark_next-orly-badger_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_next-orly-badger_8/benchmark_report.adoc
RELAY_NAME: next-orly-badger
RELAY_URL: ws://next-orly-badger:8080
TEST_TIMESTAMP: 2025-11-19T11:45:00+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_next-orly-dgraph_8
Events: 50000, Workers: 24, Duration: 1m0s
1763552705731078 migrating to version 1... /build/pkg/database/migrations.go:66
1763552705731138 migrating to version 2... /build/pkg/database/migrations.go:73
1763552705731158 migrating to version 3... /build/pkg/database/migrations.go:80
1763552705731164 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763552705731174 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763552705731188 migrating to version 4... /build/pkg/database/migrations.go:87
1763552705731192 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763552705731202 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763552705731208 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:45:05 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:45:05 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.836527264s
Events/sec: 17627.19
Avg latency: 1.103766ms
P90 latency: 1.593556ms
P95 latency: 1.895983ms
P99 latency: 3.010115ms
Bottom 10% Avg latency: 537.227µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 280.061027ms
Burst completed: 5000 events in 300.335244ms
Burst completed: 5000 events in 275.258322ms
Burst completed: 5000 events in 313.843188ms
Burst completed: 5000 events in 312.900441ms
Burst completed: 5000 events in 328.998411ms
Burst completed: 5000 events in 351.267097ms
Burst completed: 5000 events in 301.59792ms
Burst completed: 5000 events in 258.613699ms
Burst completed: 5000 events in 283.438618ms
Burst test completed: 50000 events in 8.011527851s, errors: 0
Events/sec: 6241.01
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.458311788s
Combined ops/sec: 2044.29
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 419645 queries in 1m0.004626673s
Queries/sec: 6993.54
Avg query latency: 1.565119ms
P95 query latency: 6.288941ms
P99 query latency: 10.508808ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 332245 operations (282245 queries, 50000 writes) in 1m0.003126907s
Operations/sec: 5537.13
Avg latency: 1.357488ms
Avg query latency: 1.299954ms
Avg write latency: 1.682258ms
P95 latency: 3.431084ms
P99 latency: 6.844626ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.836527264s
Total Events: 50000
Events/sec: 17627.19
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 155 MB
Avg Latency: 1.103766ms
P90 Latency: 1.593556ms
P95 Latency: 1.895983ms
P99 Latency: 3.010115ms
Bottom 10% Avg Latency: 537.227µs
----------------------------------------
Test: Burst Pattern
Duration: 8.011527851s
Total Events: 50000
Events/sec: 6241.01
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 331 MB
Avg Latency: 973.956µs
P90 Latency: 1.60055ms
P95 Latency: 1.938364ms
P99 Latency: 3.035794ms
Bottom 10% Avg Latency: 318.193µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.458311788s
Total Events: 50000
Events/sec: 2044.29
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 175 MB
Avg Latency: 362.034µs
P90 Latency: 747.544µs
P95 Latency: 839.77µs
P99 Latency: 1.058476ms
Bottom 10% Avg Latency: 953.865µs
----------------------------------------
Test: Query Performance
Duration: 1m0.004626673s
Total Events: 419645
Events/sec: 6993.54
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 120 MB
Avg Latency: 1.565119ms
P90 Latency: 4.643114ms
P95 Latency: 6.288941ms
P99 Latency: 10.508808ms
Bottom 10% Avg Latency: 7.149269ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.003126907s
Total Events: 332245
Events/sec: 5537.13
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 136 MB
Avg Latency: 1.357488ms
P90 Latency: 2.687117ms
P95 Latency: 3.431084ms
P99 Latency: 6.844626ms
Bottom 10% Avg Latency: 4.340237ms
----------------------------------------
Report saved to: /tmp/benchmark_next-orly-dgraph_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_next-orly-dgraph_8/benchmark_report.adoc
RELAY_NAME: next-orly-dgraph
RELAY_URL: ws://next-orly-dgraph:8080
TEST_TIMESTAMP: 2025-11-19T11:48:23+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_next-orly-neo4j_8
Events: 50000, Workers: 24, Duration: 1m0s
1763552908109792 migrating to version 1... /build/pkg/database/migrations.go:66
1763552908109886 migrating to version 2... /build/pkg/database/migrations.go:73
1763552908109908 migrating to version 3... /build/pkg/database/migrations.go:80
1763552908109914 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763552908109924 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763552908109937 migrating to version 4... /build/pkg/database/migrations.go:87
1763552908109942 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763552908109955 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763552908109961 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:48:28 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:48:28 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 3.218235317s
Events/sec: 15536.46
Avg latency: 1.414281ms
P90 latency: 2.076394ms
P95 latency: 2.486204ms
P99 latency: 3.930355ms
Bottom 10% Avg latency: 704.384µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 301.938212ms
Burst completed: 5000 events in 313.031584ms
Burst completed: 5000 events in 265.709133ms
Burst completed: 5000 events in 307.375893ms
Burst completed: 5000 events in 266.741467ms
Burst completed: 5000 events in 311.20987ms
Burst completed: 5000 events in 317.993736ms
Burst completed: 5000 events in 310.504816ms
Burst completed: 5000 events in 274.515075ms
Burst completed: 5000 events in 300.252051ms
Burst test completed: 50000 events in 7.975519923s, errors: 0
Events/sec: 6269.18
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.405822499s
Combined ops/sec: 2048.69
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 415410 queries in 1m0.004397847s
Queries/sec: 6922.99
Avg query latency: 1.588134ms
P95 query latency: 6.413781ms
P99 query latency: 10.205668ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 330584 operations (280584 queries, 50000 writes) in 1m0.003241067s
Operations/sec: 5509.44
Avg latency: 1.343539ms
Avg query latency: 1.315494ms
Avg write latency: 1.500921ms
P95 latency: 3.442423ms
P99 latency: 5.829737ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 3.218235317s
Total Events: 50000
Events/sec: 15536.46
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 161 MB
Avg Latency: 1.414281ms
P90 Latency: 2.076394ms
P95 Latency: 2.486204ms
P99 Latency: 3.930355ms
Bottom 10% Avg Latency: 704.384µs
----------------------------------------
Test: Burst Pattern
Duration: 7.975519923s
Total Events: 50000
Events/sec: 6269.18
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 233 MB
Avg Latency: 919.794µs
P90 Latency: 1.535845ms
P95 Latency: 1.842478ms
P99 Latency: 2.842222ms
Bottom 10% Avg Latency: 284.854µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.405822499s
Total Events: 50000
Events/sec: 2048.69
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 158 MB
Avg Latency: 356.992µs
P90 Latency: 736.282µs
P95 Latency: 828.598µs
P99 Latency: 1.054387ms
Bottom 10% Avg Latency: 927.325µs
----------------------------------------
Test: Query Performance
Duration: 1m0.004397847s
Total Events: 415410
Events/sec: 6922.99
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 128 MB
Avg Latency: 1.588134ms
P90 Latency: 4.790039ms
P95 Latency: 6.413781ms
P99 Latency: 10.205668ms
Bottom 10% Avg Latency: 7.154636ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.003241067s
Total Events: 330584
Events/sec: 5509.44
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 120 MB
Avg Latency: 1.343539ms
P90 Latency: 2.726991ms
P95 Latency: 3.442423ms
P99 Latency: 5.829737ms
Bottom 10% Avg Latency: 4.02073ms
----------------------------------------
Report saved to: /tmp/benchmark_next-orly-neo4j_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_next-orly-neo4j_8/benchmark_report.adoc
RELAY_NAME: next-orly-neo4j
RELAY_URL: ws://next-orly-neo4j:8080
TEST_TIMESTAMP: 2025-11-19T11:51:45+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_nostr-rs-relay_8
Events: 50000, Workers: 24, Duration: 1m0s
1763553920905673 migrating to version 1... /build/pkg/database/migrations.go:66
1763553920905751 migrating to version 2... /build/pkg/database/migrations.go:73
1763553920905773 migrating to version 3... /build/pkg/database/migrations.go:80
1763553920905780 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763553920905790 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763553920905809 migrating to version 4... /build/pkg/database/migrations.go:87
1763553920905815 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763553920905826 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763553920905831 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 12:05:20 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 12:05:20 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.982518845s
Events/sec: 16764.35
Avg latency: 1.245012ms
P90 latency: 1.807629ms
P95 latency: 2.151312ms
P99 latency: 3.240824ms
Bottom 10% Avg latency: 614.335µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 281.003362ms
Burst completed: 5000 events in 309.061248ms
Burst completed: 5000 events in 287.188282ms
Burst completed: 5000 events in 312.168826ms
Burst completed: 5000 events in 265.066224ms
Burst completed: 5000 events in 294.341689ms
Burst completed: 5000 events in 347.422564ms
Burst completed: 5000 events in 279.885181ms
Burst completed: 5000 events in 261.874189ms
Burst completed: 5000 events in 289.890466ms
Burst test completed: 50000 events in 7.935611226s, errors: 0
Events/sec: 6300.71
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.4135272s
Combined ops/sec: 2048.04
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 430130 queries in 1m0.004366885s
Queries/sec: 7168.31
Avg query latency: 1.528235ms
P95 query latency: 6.050953ms
P99 query latency: 9.954498ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 333734 operations (283734 queries, 50000 writes) in 1m0.004269794s
Operations/sec: 5561.84
Avg latency: 1.317015ms
Avg query latency: 1.295184ms
Avg write latency: 1.440899ms
P95 latency: 3.369234ms
P99 latency: 5.820636ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.982518845s
Total Events: 50000
Events/sec: 16764.35
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 129 MB
Avg Latency: 1.245012ms
P90 Latency: 1.807629ms
P95 Latency: 2.151312ms
P99 Latency: 3.240824ms
Bottom 10% Avg Latency: 614.335µs
----------------------------------------
Test: Burst Pattern
Duration: 7.935611226s
Total Events: 50000
Events/sec: 6300.71
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 289 MB
Avg Latency: 869.47µs
P90 Latency: 1.41943ms
P95 Latency: 1.707251ms
P99 Latency: 2.634998ms
Bottom 10% Avg Latency: 297.293µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.4135272s
Total Events: 50000
Events/sec: 2048.04
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 129 MB
Avg Latency: 348.336µs
P90 Latency: 725.399µs
P95 Latency: 816.334µs
P99 Latency: 1.048158ms
Bottom 10% Avg Latency: 906.961µs
----------------------------------------
Test: Query Performance
Duration: 1m0.004366885s
Total Events: 430130
Events/sec: 7168.31
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 109 MB
Avg Latency: 1.528235ms
P90 Latency: 4.478876ms
P95 Latency: 6.050953ms
P99 Latency: 9.954498ms
Bottom 10% Avg Latency: 6.853109ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.004269794s
Total Events: 333734
Events/sec: 5561.84
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 110 MB
Avg Latency: 1.317015ms
P90 Latency: 2.675799ms
P95 Latency: 3.369234ms
P99 Latency: 5.820636ms
Bottom 10% Avg Latency: 3.995899ms
----------------------------------------
Report saved to: /tmp/benchmark_nostr-rs-relay_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_nostr-rs-relay_8/benchmark_report.adoc
RELAY_NAME: nostr-rs-relay
RELAY_URL: ws://nostr-rs-relay:8080
TEST_TIMESTAMP: 2025-11-19T12:08:38+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_relayer-basic_8
Events: 50000, Workers: 24, Duration: 1m0s
1763553515697722 migrating to version 1... /build/pkg/database/migrations.go:66
1763553515697789 migrating to version 2... /build/pkg/database/migrations.go:73
1763553515697814 migrating to version 3... /build/pkg/database/migrations.go:80
1763553515697821 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763553515697832 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763553515697850 migrating to version 4... /build/pkg/database/migrations.go:87
1763553515697856 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763553515697872 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763553515697879 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 11:58:35 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 11:58:35 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 2.803257666s
Events/sec: 17836.39
Avg latency: 1.081434ms
P90 latency: 1.542545ms
P95 latency: 1.853627ms
P99 latency: 3.03258ms
Bottom 10% Avg latency: 525.619µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 285.768096ms
Burst completed: 5000 events in 295.661708ms
Burst completed: 5000 events in 313.067191ms
Burst completed: 5000 events in 295.800371ms
Burst completed: 5000 events in 282.901081ms
Burst completed: 5000 events in 322.19214ms
Burst completed: 5000 events in 332.397114ms
Burst completed: 5000 events in 272.623827ms
Burst completed: 5000 events in 255.567207ms
Burst completed: 5000 events in 311.027979ms
Burst test completed: 50000 events in 7.973444489s, errors: 0
Events/sec: 6270.82
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.504151701s
Combined ops/sec: 2040.47
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 410656 queries in 1m0.007248632s
Queries/sec: 6843.44
Avg query latency: 1.610981ms
P95 query latency: 6.475108ms
P99 query latency: 10.557655ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 329875 operations (279875 queries, 50000 writes) in 1m0.002939993s
Operations/sec: 5497.65
Avg latency: 1.347653ms
Avg query latency: 1.319379ms
Avg write latency: 1.505918ms
P95 latency: 3.479869ms
P99 latency: 5.990926ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 2.803257666s
Total Events: 50000
Events/sec: 17836.39
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 132 MB
Avg Latency: 1.081434ms
P90 Latency: 1.542545ms
P95 Latency: 1.853627ms
P99 Latency: 3.03258ms
Bottom 10% Avg Latency: 525.619µs
----------------------------------------
Test: Burst Pattern
Duration: 7.973444489s
Total Events: 50000
Events/sec: 6270.82
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 239 MB
Avg Latency: 951.65µs
P90 Latency: 1.501036ms
P95 Latency: 1.779976ms
P99 Latency: 2.806119ms
Bottom 10% Avg Latency: 307.676µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.504151701s
Total Events: 50000
Events/sec: 2040.47
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 159 MB
Avg Latency: 358.608µs
P90 Latency: 741.841µs
P95 Latency: 831.883µs
P99 Latency: 1.05125ms
Bottom 10% Avg Latency: 913.888µs
----------------------------------------
Test: Query Performance
Duration: 1m0.007248632s
Total Events: 410656
Events/sec: 6843.44
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 132 MB
Avg Latency: 1.610981ms
P90 Latency: 4.794751ms
P95 Latency: 6.475108ms
P99 Latency: 10.557655ms
Bottom 10% Avg Latency: 7.3137ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.002939993s
Total Events: 329875
Events/sec: 5497.65
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 102 MB
Avg Latency: 1.347653ms
P90 Latency: 2.710576ms
P95 Latency: 3.479869ms
P99 Latency: 5.990926ms
Bottom 10% Avg Latency: 4.105794ms
----------------------------------------
Report saved to: /tmp/benchmark_relayer-basic_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_relayer-basic_8/benchmark_report.adoc
RELAY_NAME: relayer-basic
RELAY_URL: ws://relayer-basic:7447
TEST_TIMESTAMP: 2025-11-19T12:01:52+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s

View File

@@ -0,0 +1,194 @@
Starting Nostr Relay Benchmark (Badger Backend)
Data Directory: /tmp/benchmark_strfry_8
Events: 50000, Workers: 24, Duration: 1m0s
1763553718040055 migrating to version 1... /build/pkg/database/migrations.go:66
1763553718040163 migrating to version 2... /build/pkg/database/migrations.go:73
1763553718040192 migrating to version 3... /build/pkg/database/migrations.go:80
1763553718040200 cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:287
1763553718040213 cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:332
1763553718040231 migrating to version 4... /build/pkg/database/migrations.go:87
1763553718040237 converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:340
1763553718040250 found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:429
1763553718040257 migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:538
╔════════════════════════════════════════════════════════╗
║ BADGER BACKEND BENCHMARK SUITE ║
╚════════════════════════════════════════════════════════╝
=== Starting Badger benchmark ===
RunPeakThroughputTest (Badger)..
=== Peak Throughput Test ===
2025/11/19 12:01:58 WARN: Failed to load embedded library from /tmp/orly-libsecp256k1/libsecp256k1.so: Error relocating /tmp/orly-libsecp256k1/libsecp256k1.so: __fprintf_chk: symbol not found, falling back to system paths
2025/11/19 12:01:58 INFO: Successfully loaded libsecp256k1 v5.0.0 from system path: libsecp256k1.so.2
Events saved: 50000/50000 (100.0%), errors: 0
Duration: 3.035812013s
Events/sec: 16470.06
Avg latency: 1.261656ms
P90 latency: 1.86043ms
P95 latency: 2.241835ms
P99 latency: 3.791012ms
Bottom 10% Avg latency: 566.551µs
Wiping database between tests...
RunBurstPatternTest (Badger)..
=== Burst Pattern Test ===
Burst completed: 5000 events in 309.527802ms
Burst completed: 5000 events in 299.690349ms
Burst completed: 5000 events in 321.057535ms
Burst completed: 5000 events in 323.104548ms
Burst completed: 5000 events in 363.925348ms
Burst completed: 5000 events in 371.373375ms
Burst completed: 5000 events in 349.908414ms
Burst completed: 5000 events in 323.642941ms
Burst completed: 5000 events in 326.073936ms
Burst completed: 5000 events in 332.367747ms
Burst test completed: 50000 events in 8.326455297s, errors: 0
Events/sec: 6004.96
Wiping database between tests...
RunMixedReadWriteTest (Badger)..
=== Mixed Read/Write Test ===
Generating 1000 unique synthetic events (minimum 300 bytes each)...
Generated 1000 events:
Average content size: 312 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database for read tests...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Mixed test completed: 25000 writes, 25000 reads in 24.489409377s
Combined ops/sec: 2041.70
Wiping database between tests...
RunQueryTest (Badger)..
=== Query Test ===
Generating 10000 unique synthetic events (minimum 300 bytes each)...
Generated 10000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 10000 events for query tests...
Query test completed: 415410 queries in 1m0.006077117s
Queries/sec: 6922.80
Avg query latency: 1.587664ms
P95 query latency: 6.417337ms
P99 query latency: 10.569454ms
Wiping database between tests...
RunConcurrentQueryStoreTest (Badger)..
=== Concurrent Query/Store Test ===
Generating 5000 unique synthetic events (minimum 300 bytes each)...
Generated 5000 events:
Average content size: 313 bytes
All events are unique (incremental timestamps)
All events are properly signed
Pre-populating database with 5000 events for concurrent query/store test...
Generating 50000 unique synthetic events (minimum 300 bytes each)...
Generated 50000 events:
Average content size: 314 bytes
All events are unique (incremental timestamps)
All events are properly signed
Concurrent test completed: 335215 operations (285215 queries, 50000 writes) in 1m0.003669664s
Operations/sec: 5586.57
Avg latency: 1.33393ms
Avg query latency: 1.282711ms
Avg write latency: 1.626098ms
P95 latency: 3.420507ms
P99 latency: 6.376008ms
=== Badger benchmark completed ===
================================================================================
BENCHMARK REPORT
================================================================================
Test: Peak Throughput
Duration: 3.035812013s
Total Events: 50000
Events/sec: 16470.06
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 147 MB
Avg Latency: 1.261656ms
P90 Latency: 1.86043ms
P95 Latency: 2.241835ms
P99 Latency: 3.791012ms
Bottom 10% Avg Latency: 566.551µs
----------------------------------------
Test: Burst Pattern
Duration: 8.326455297s
Total Events: 50000
Events/sec: 6004.96
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 292 MB
Avg Latency: 1.02418ms
P90 Latency: 1.878082ms
P95 Latency: 2.314062ms
P99 Latency: 3.784179ms
Bottom 10% Avg Latency: 299.97µs
----------------------------------------
Test: Mixed Read/Write
Duration: 24.489409377s
Total Events: 50000
Events/sec: 2041.70
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 117 MB
Avg Latency: 358.856µs
P90 Latency: 734.307µs
P95 Latency: 821.493µs
P99 Latency: 1.037233ms
Bottom 10% Avg Latency: 941.286µs
----------------------------------------
Test: Query Performance
Duration: 1m0.006077117s
Total Events: 415410
Events/sec: 6922.80
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 122 MB
Avg Latency: 1.587664ms
P90 Latency: 4.724046ms
P95 Latency: 6.417337ms
P99 Latency: 10.569454ms
Bottom 10% Avg Latency: 7.25924ms
----------------------------------------
Test: Concurrent Query/Store
Duration: 1m0.003669664s
Total Events: 335215
Events/sec: 5586.57
Success Rate: 100.0%
Concurrent Workers: 24
Memory Used: 123 MB
Avg Latency: 1.33393ms
P90 Latency: 2.669918ms
P95 Latency: 3.420507ms
P99 Latency: 6.376008ms
Bottom 10% Avg Latency: 4.184519ms
----------------------------------------
Report saved to: /tmp/benchmark_strfry_8/benchmark_report.txt
AsciiDoc report saved to: /tmp/benchmark_strfry_8/benchmark_report.adoc
RELAY_NAME: strfry
RELAY_URL: ws://strfry:8080
TEST_TIMESTAMP: 2025-11-19T12:05:15+00:00
BENCHMARK_CONFIG:
Events: 50000
Workers: 24
Duration: 60s