This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_khatru-badger_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764840830987179ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764840830987255ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764840830987278ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764840830987283ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764840830987292ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764840830987305ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764840830987310ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764840830987336ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764840830987364ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764840830987412ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764840830987419ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764840830987429ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764840830987435ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764840830987452ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764840830987458ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764840830987473ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764840830987479ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 09:33:50 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 3.213866224s
|
||||
Events/sec: 15557.59
|
||||
Avg latency: 1.456848ms
|
||||
P90 latency: 1.953553ms
|
||||
P95 latency: 2.322455ms
|
||||
P99 latency: 4.316566ms
|
||||
Bottom 10% Avg latency: 793.956µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 336.223018ms
|
||||
Burst completed: 5000 events in 314.023603ms
|
||||
Burst completed: 5000 events in 296.961158ms
|
||||
Burst completed: 5000 events in 313.470891ms
|
||||
Burst completed: 5000 events in 312.977339ms
|
||||
Burst completed: 5000 events in 304.290846ms
|
||||
Burst completed: 5000 events in 279.718158ms
|
||||
Burst completed: 5000 events in 351.360773ms
|
||||
Burst completed: 5000 events in 413.446584ms
|
||||
Burst completed: 5000 events in 412.074279ms
|
||||
Burst test completed: 50000 events in 8.341599033s, errors: 0
|
||||
Events/sec: 5994.05
|
||||
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.442820936s
|
||||
Combined ops/sec: 2045.59
|
||||
Wiping database between tests...
|
||||
@@ -0,0 +1,8 @@
|
||||
|
||||
RELAY_NAME: khatru-sqlite
|
||||
RELAY_URL: ws://khatru-sqlite:3334
|
||||
TEST_TIMESTAMP: 2025-12-04T09:33:45+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -1,78 +0,0 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_next-orly-neo4j_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764840427673892ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764840427674007ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764840427674031ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764840427674036ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764840427674056ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764840427674081ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764840427674087ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764840427674097ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764840427674102ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764840427674116ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764840427674121ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764840427674128ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764840427674132ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764840427674146ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764840427674151ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764840427674168ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764840427674172ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 09:27:07 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 3.004845722s
|
||||
Events/sec: 16639.79
|
||||
Avg latency: 1.323689ms
|
||||
P90 latency: 1.758038ms
|
||||
P95 latency: 2.077948ms
|
||||
P99 latency: 3.856256ms
|
||||
Bottom 10% Avg latency: 730.568µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 283.966934ms
|
||||
Burst completed: 5000 events in 294.692625ms
|
||||
Burst completed: 5000 events in 363.280618ms
|
||||
Burst completed: 5000 events in 340.745621ms
|
||||
Burst completed: 5000 events in 304.674199ms
|
||||
Burst completed: 5000 events in 280.09038ms
|
||||
Burst completed: 5000 events in 266.781378ms
|
||||
Burst completed: 5000 events in 277.70181ms
|
||||
Burst completed: 5000 events in 271.658408ms
|
||||
Burst completed: 5000 events in 309.272288ms
|
||||
Burst test completed: 50000 events in 8.000384614s, errors: 0
|
||||
Events/sec: 6249.70
|
||||
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.409054146s
|
||||
Combined ops/sec: 2048.42
|
||||
Wiping database between tests...
|
||||
RunQueryTest (Badger)..
|
||||
|
||||
=== Query Test ===
|
||||
Generating 10000 unique synthetic events (minimum 300 bytes each)...
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_khatru-badger_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764845904475025ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764845904475112ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764845904475134ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764845904475139ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764845904475152ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764845904475166ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764845904475171ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764845904475182ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764845904475187ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764845904475202ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764845904475207ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764845904475213ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764845904475218ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764845904475233ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764845904475238ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764845904475247ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764845904475252ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 10:58:24 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 4.536980771s
|
||||
Events/sec: 11020.54
|
||||
Avg latency: 2.141467ms
|
||||
P90 latency: 3.415814ms
|
||||
P95 latency: 4.218151ms
|
||||
P99 latency: 6.573395ms
|
||||
Bottom 10% Avg latency: 965.163µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 562.534206ms
|
||||
Burst completed: 5000 events in 495.672511ms
|
||||
Burst completed: 5000 events in 403.9333ms
|
||||
Burst completed: 5000 events in 406.633831ms
|
||||
Burst completed: 5000 events in 497.747932ms
|
||||
Burst completed: 5000 events in 375.06022ms
|
||||
Burst completed: 5000 events in 357.935146ms
|
||||
Burst completed: 5000 events in 354.7018ms
|
||||
Burst completed: 5000 events in 363.034284ms
|
||||
Burst completed: 5000 events in 369.648798ms
|
||||
Burst test completed: 50000 events in 9.192909424s, errors: 0
|
||||
Events/sec: 5438.97
|
||||
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.759007602s
|
||||
Combined ops/sec: 2019.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: 279947 queries in 1m0.0101769s
|
||||
Queries/sec: 4664.99
|
||||
Avg query latency: 3.577317ms
|
||||
P95 query latency: 13.542975ms
|
||||
P99 query latency: 20.687227ms
|
||||
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: 236582 operations (186582 queries, 50000 writes) in 1m0.004658961s
|
||||
Operations/sec: 3942.73
|
||||
Avg latency: 2.272206ms
|
||||
Avg query latency: 2.486915ms
|
||||
Avg write latency: 1.470991ms
|
||||
P95 latency: 6.629071ms
|
||||
P99 latency: 17.102632ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 4.536980771s
|
||||
Total Events: 50000
|
||||
Events/sec: 11020.54
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 233 MB
|
||||
Avg Latency: 2.141467ms
|
||||
P90 Latency: 3.415814ms
|
||||
P95 Latency: 4.218151ms
|
||||
P99 Latency: 6.573395ms
|
||||
Bottom 10% Avg Latency: 965.163µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.192909424s
|
||||
Total Events: 50000
|
||||
Events/sec: 5438.97
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 235 MB
|
||||
Avg Latency: 1.990208ms
|
||||
P90 Latency: 3.107457ms
|
||||
P95 Latency: 3.856432ms
|
||||
P99 Latency: 6.336835ms
|
||||
Bottom 10% Avg Latency: 900.221µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.759007602s
|
||||
Total Events: 50000
|
||||
Events/sec: 2019.47
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 174 MB
|
||||
Avg Latency: 450.921µs
|
||||
P90 Latency: 937.184µs
|
||||
P95 Latency: 1.10841ms
|
||||
P99 Latency: 1.666212ms
|
||||
Bottom 10% Avg Latency: 1.296193ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.0101769s
|
||||
Total Events: 279947
|
||||
Events/sec: 4664.99
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 142 MB
|
||||
Avg Latency: 3.577317ms
|
||||
P90 Latency: 10.560196ms
|
||||
P95 Latency: 13.542975ms
|
||||
P99 Latency: 20.687227ms
|
||||
Bottom 10% Avg Latency: 14.957911ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.004658961s
|
||||
Total Events: 236582
|
||||
Events/sec: 3942.73
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 161 MB
|
||||
Avg Latency: 2.272206ms
|
||||
P90 Latency: 4.975152ms
|
||||
P95 Latency: 6.629071ms
|
||||
P99 Latency: 17.102632ms
|
||||
Bottom 10% Avg Latency: 8.89611ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T11:01:44+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_khatru-sqlite_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764845699509026ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764845699509106ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764845699509128ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764845699509133ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764845699509146ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764845699509159ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764845699509164ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764845699509172ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764845699509178ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764845699509192ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764845699509197ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764845699509206ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764845699509211ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764845699509224ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764845699509228ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764845699509238ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764845699509242ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 10:54:59 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 4.109596583s
|
||||
Events/sec: 12166.64
|
||||
Avg latency: 1.93573ms
|
||||
P90 latency: 2.871977ms
|
||||
P95 latency: 3.44036ms
|
||||
P99 latency: 5.475515ms
|
||||
Bottom 10% Avg latency: 961.636µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 515.356224ms
|
||||
Burst completed: 5000 events in 399.9581ms
|
||||
Burst completed: 5000 events in 459.416277ms
|
||||
Burst completed: 5000 events in 428.20652ms
|
||||
Burst completed: 5000 events in 747.547021ms
|
||||
Burst completed: 5000 events in 647.984214ms
|
||||
Burst completed: 5000 events in 488.90592ms
|
||||
Burst completed: 5000 events in 377.505306ms
|
||||
Burst completed: 5000 events in 465.109125ms
|
||||
Burst completed: 5000 events in 429.364917ms
|
||||
Burst test completed: 50000 events in 9.965909051s, errors: 0
|
||||
Events/sec: 5017.10
|
||||
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.612452482s
|
||||
Combined ops/sec: 2031.49
|
||||
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: 302291 queries in 1m0.005394665s
|
||||
Queries/sec: 5037.73
|
||||
Avg query latency: 3.277291ms
|
||||
P95 query latency: 12.307232ms
|
||||
P99 query latency: 18.488169ms
|
||||
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: 243436 operations (193436 queries, 50000 writes) in 1m0.00468811s
|
||||
Operations/sec: 4056.95
|
||||
Avg latency: 2.220391ms
|
||||
Avg query latency: 2.393422ms
|
||||
Avg write latency: 1.550983ms
|
||||
P95 latency: 6.295105ms
|
||||
P99 latency: 16.788623ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 4.109596583s
|
||||
Total Events: 50000
|
||||
Events/sec: 12166.64
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 243 MB
|
||||
Avg Latency: 1.93573ms
|
||||
P90 Latency: 2.871977ms
|
||||
P95 Latency: 3.44036ms
|
||||
P99 Latency: 5.475515ms
|
||||
Bottom 10% Avg Latency: 961.636µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.965909051s
|
||||
Total Events: 50000
|
||||
Events/sec: 5017.10
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 257 MB
|
||||
Avg Latency: 2.375602ms
|
||||
P90 Latency: 3.854368ms
|
||||
P95 Latency: 5.019226ms
|
||||
P99 Latency: 8.287248ms
|
||||
Bottom 10% Avg Latency: 1.013228ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.612452482s
|
||||
Total Events: 50000
|
||||
Events/sec: 2031.49
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 190 MB
|
||||
Avg Latency: 432.265µs
|
||||
P90 Latency: 913.499µs
|
||||
P95 Latency: 1.051763ms
|
||||
P99 Latency: 1.395767ms
|
||||
Bottom 10% Avg Latency: 1.160261ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.005394665s
|
||||
Total Events: 302291
|
||||
Events/sec: 5037.73
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 234 MB
|
||||
Avg Latency: 3.277291ms
|
||||
P90 Latency: 9.787032ms
|
||||
P95 Latency: 12.307232ms
|
||||
P99 Latency: 18.488169ms
|
||||
Bottom 10% Avg Latency: 13.509646ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.00468811s
|
||||
Total Events: 243436
|
||||
Events/sec: 4056.95
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 148 MB
|
||||
Avg Latency: 2.220391ms
|
||||
P90 Latency: 4.746928ms
|
||||
P95 Latency: 6.295105ms
|
||||
P99 Latency: 16.788623ms
|
||||
Bottom 10% Avg Latency: 8.681502ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T10:58:19+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,43 @@
|
||||
Starting Network Graph Traversal Benchmark
|
||||
Relay URL: ws://next-orly-badger:8080
|
||||
Workers: 24
|
||||
Pubkeys: 100000, Follows per pubkey: 1-1000
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ NETWORK GRAPH TRAVERSAL BENCHMARK (100k Pubkeys) ║
|
||||
║ Relay: ws://next-orly-badger:8080 ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
Generating 100000 deterministic pubkeys...
|
||||
2025/12/04 13:19:05 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Generated 10000/100000 pubkeys...
|
||||
Generated 20000/100000 pubkeys...
|
||||
Generated 30000/100000 pubkeys...
|
||||
Generated 40000/100000 pubkeys...
|
||||
Generated 50000/100000 pubkeys...
|
||||
Generated 60000/100000 pubkeys...
|
||||
Generated 70000/100000 pubkeys...
|
||||
Generated 80000/100000 pubkeys...
|
||||
Generated 90000/100000 pubkeys...
|
||||
Generated 100000/100000 pubkeys...
|
||||
Generated 100000 pubkeys in 2.473794335s
|
||||
Generating follow graph (1-1000 follows per pubkey)...
|
||||
Generated follow lists for 10000/100000 pubkeys...
|
||||
Generated follow lists for 20000/100000 pubkeys...
|
||||
Generated follow lists for 30000/100000 pubkeys...
|
||||
Generated follow lists for 40000/100000 pubkeys...
|
||||
Generated follow lists for 50000/100000 pubkeys...
|
||||
Generated follow lists for 60000/100000 pubkeys...
|
||||
Generated follow lists for 70000/100000 pubkeys...
|
||||
Generated follow lists for 80000/100000 pubkeys...
|
||||
Generated follow lists for 90000/100000 pubkeys...
|
||||
Generated follow lists for 100000/100000 pubkeys...
|
||||
Generated follow graph in 4.361425602s (avg 500.5 follows/pubkey, total 50048088 follows)
|
||||
|
||||
Connecting to relay: ws://next-orly-badger:8080
|
||||
Connected successfully!
|
||||
Creating follow list events via WebSocket...
|
||||
Queued 10000/100000 follow list events...
|
||||
Queued 20000/100000 follow list events...
|
||||
Queued 30000/100000 follow list events...
|
||||
1764854401568817🚨 NOTICE from ws://next-orly-badger:8080: 'EVENT processing failed' /go/pkg/mod/git.mleku.dev/mleku/nostr@v1.0.8/ws/client.go:326
|
||||
1764854402773843🚨 failed to write message: %!w(*net.OpError=&{write tcp 0xc0001b0f30 0xc0001b0f60 {}}) /go/pkg/mod/git.mleku.dev/mleku/nostr@v1.0.8/ws/connection.go:63
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_next-orly-badger_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764845290757888ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764845290758084ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764845290758119ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764845290758124ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764845290758135ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764845290758150ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764845290758155ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764845290758167ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764845290758173ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764845290758190ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764845290758195ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764845290758204ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764845290758210ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764845290758224ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764845290758229ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764845290758241ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764845290758247ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 10:48:10 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 4.113585513s
|
||||
Events/sec: 12154.85
|
||||
Avg latency: 1.935424ms
|
||||
P90 latency: 2.908617ms
|
||||
P95 latency: 3.52541ms
|
||||
P99 latency: 5.586614ms
|
||||
Bottom 10% Avg latency: 943.568µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 384.404827ms
|
||||
Burst completed: 5000 events in 366.066982ms
|
||||
Burst completed: 5000 events in 413.972961ms
|
||||
Burst completed: 5000 events in 540.992935ms
|
||||
Burst completed: 5000 events in 444.488278ms
|
||||
Burst completed: 5000 events in 342.979185ms
|
||||
Burst completed: 5000 events in 393.451489ms
|
||||
Burst completed: 5000 events in 530.328367ms
|
||||
Burst completed: 5000 events in 483.78923ms
|
||||
Burst completed: 5000 events in 356.248835ms
|
||||
Burst test completed: 50000 events in 9.263453685s, errors: 0
|
||||
Events/sec: 5397.55
|
||||
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.809227197s
|
||||
Combined ops/sec: 2015.38
|
||||
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: 256384 queries in 1m0.005966351s
|
||||
Queries/sec: 4272.64
|
||||
Avg query latency: 3.92418ms
|
||||
P95 query latency: 14.841512ms
|
||||
P99 query latency: 22.768552ms
|
||||
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: 220975 operations (170975 queries, 50000 writes) in 1m0.003529193s
|
||||
Operations/sec: 3682.70
|
||||
Avg latency: 2.572587ms
|
||||
Avg query latency: 2.803798ms
|
||||
Avg write latency: 1.781959ms
|
||||
P95 latency: 7.618974ms
|
||||
P99 latency: 19.690393ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 4.113585513s
|
||||
Total Events: 50000
|
||||
Events/sec: 12154.85
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 127 MB
|
||||
Avg Latency: 1.935424ms
|
||||
P90 Latency: 2.908617ms
|
||||
P95 Latency: 3.52541ms
|
||||
P99 Latency: 5.586614ms
|
||||
Bottom 10% Avg Latency: 943.568µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.263453685s
|
||||
Total Events: 50000
|
||||
Events/sec: 5397.55
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 231 MB
|
||||
Avg Latency: 2.034536ms
|
||||
P90 Latency: 3.126682ms
|
||||
P95 Latency: 3.863975ms
|
||||
P99 Latency: 6.098539ms
|
||||
Bottom 10% Avg Latency: 935.662µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.809227197s
|
||||
Total Events: 50000
|
||||
Events/sec: 2015.38
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 184 MB
|
||||
Avg Latency: 438.529µs
|
||||
P90 Latency: 917.747µs
|
||||
P95 Latency: 1.086949ms
|
||||
P99 Latency: 1.523991ms
|
||||
Bottom 10% Avg Latency: 1.218802ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.005966351s
|
||||
Total Events: 256384
|
||||
Events/sec: 4272.64
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 151 MB
|
||||
Avg Latency: 3.92418ms
|
||||
P90 Latency: 11.560176ms
|
||||
P95 Latency: 14.841512ms
|
||||
P99 Latency: 22.768552ms
|
||||
Bottom 10% Avg Latency: 16.422096ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.003529193s
|
||||
Total Events: 220975
|
||||
Events/sec: 3682.70
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 207 MB
|
||||
Avg Latency: 2.572587ms
|
||||
P90 Latency: 5.5629ms
|
||||
P95 Latency: 7.618974ms
|
||||
P99 Latency: 19.690393ms
|
||||
Bottom 10% Avg Latency: 10.306482ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T10:51:30+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_next-orly-neo4j_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764845495230040ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764845495230118ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764845495230154ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764845495230159ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764845495230168ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764845495230182ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764845495230187ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764845495230198ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764845495230204ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764845495230219ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764845495230224ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764845495230232ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764845495230237ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764845495230250ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764845495230255ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764845495230265ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764845495230269ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 10:51:35 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 3.737037757s
|
||||
Events/sec: 13379.58
|
||||
Avg latency: 1.744659ms
|
||||
P90 latency: 2.47401ms
|
||||
P95 latency: 2.895953ms
|
||||
P99 latency: 4.909556ms
|
||||
Bottom 10% Avg latency: 897.762µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 421.882059ms
|
||||
Burst completed: 5000 events in 412.531799ms
|
||||
Burst completed: 5000 events in 429.098267ms
|
||||
Burst completed: 5000 events in 390.670143ms
|
||||
Burst completed: 5000 events in 438.603112ms
|
||||
Burst completed: 5000 events in 366.944086ms
|
||||
Burst completed: 5000 events in 534.455064ms
|
||||
Burst completed: 5000 events in 559.621403ms
|
||||
Burst completed: 5000 events in 393.427363ms
|
||||
Burst completed: 5000 events in 371.875354ms
|
||||
Burst test completed: 50000 events in 9.324705477s, errors: 0
|
||||
Events/sec: 5362.10
|
||||
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.924958418s
|
||||
Combined ops/sec: 2006.02
|
||||
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: 244167 queries in 1m0.008740456s
|
||||
Queries/sec: 4068.86
|
||||
Avg query latency: 4.157543ms
|
||||
P95 query latency: 15.724716ms
|
||||
P99 query latency: 24.284362ms
|
||||
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: 227664 operations (177664 queries, 50000 writes) in 1m0.005538199s
|
||||
Operations/sec: 3794.05
|
||||
Avg latency: 2.523997ms
|
||||
Avg query latency: 2.668863ms
|
||||
Avg write latency: 2.009247ms
|
||||
P95 latency: 7.235855ms
|
||||
P99 latency: 20.657306ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 3.737037757s
|
||||
Total Events: 50000
|
||||
Events/sec: 13379.58
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 217 MB
|
||||
Avg Latency: 1.744659ms
|
||||
P90 Latency: 2.47401ms
|
||||
P95 Latency: 2.895953ms
|
||||
P99 Latency: 4.909556ms
|
||||
Bottom 10% Avg Latency: 897.762µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.324705477s
|
||||
Total Events: 50000
|
||||
Events/sec: 5362.10
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 304 MB
|
||||
Avg Latency: 2.063122ms
|
||||
P90 Latency: 3.130188ms
|
||||
P95 Latency: 3.8975ms
|
||||
P99 Latency: 6.378352ms
|
||||
Bottom 10% Avg Latency: 954.959µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.924958418s
|
||||
Total Events: 50000
|
||||
Events/sec: 2006.02
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 272 MB
|
||||
Avg Latency: 475.177µs
|
||||
P90 Latency: 996.497µs
|
||||
P95 Latency: 1.205595ms
|
||||
P99 Latency: 1.873106ms
|
||||
Bottom 10% Avg Latency: 1.414397ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.008740456s
|
||||
Total Events: 244167
|
||||
Events/sec: 4068.86
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 148 MB
|
||||
Avg Latency: 4.157543ms
|
||||
P90 Latency: 12.228439ms
|
||||
P95 Latency: 15.724716ms
|
||||
P99 Latency: 24.284362ms
|
||||
Bottom 10% Avg Latency: 17.427943ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.005538199s
|
||||
Total Events: 227664
|
||||
Events/sec: 3794.05
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 211 MB
|
||||
Avg Latency: 2.523997ms
|
||||
P90 Latency: 5.269722ms
|
||||
P95 Latency: 7.235855ms
|
||||
P99 Latency: 20.657306ms
|
||||
Bottom 10% Avg Latency: 10.288906ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T10:54:54+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_nostr-rs-relay_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764846517510492ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764846517510692ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764846517511210ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764846517511251ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764846517511274ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764846517511304ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764846517511317ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764846517511329ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764846517511340ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764846517511366ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764846517511373ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764846517511388ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764846517511394ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764846517511443ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764846517511452ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764846517511466ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764846517511472ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 11:08:37 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 4.118969633s
|
||||
Events/sec: 12138.96
|
||||
Avg latency: 1.937994ms
|
||||
P90 latency: 2.852802ms
|
||||
P95 latency: 3.444328ms
|
||||
P99 latency: 5.727836ms
|
||||
Bottom 10% Avg latency: 946.456µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 403.020917ms
|
||||
Burst completed: 5000 events in 372.371612ms
|
||||
Burst completed: 5000 events in 424.238707ms
|
||||
Burst completed: 5000 events in 385.317421ms
|
||||
Burst completed: 5000 events in 516.841571ms
|
||||
Burst completed: 5000 events in 591.703187ms
|
||||
Burst completed: 5000 events in 445.314485ms
|
||||
Burst completed: 5000 events in 374.011153ms
|
||||
Burst completed: 5000 events in 398.6942ms
|
||||
Burst completed: 5000 events in 365.965806ms
|
||||
Burst test completed: 50000 events in 9.28457886s, errors: 0
|
||||
Events/sec: 5385.27
|
||||
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.684808581s
|
||||
Combined ops/sec: 2025.54
|
||||
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: 251672 queries in 1m0.006178379s
|
||||
Queries/sec: 4194.10
|
||||
Avg query latency: 4.01666ms
|
||||
P95 query latency: 15.051188ms
|
||||
P99 query latency: 22.451758ms
|
||||
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: 219001 operations (169001 queries, 50000 writes) in 1m0.004144652s
|
||||
Operations/sec: 3649.76
|
||||
Avg latency: 2.620549ms
|
||||
Avg query latency: 2.844617ms
|
||||
Avg write latency: 1.863195ms
|
||||
P95 latency: 7.482377ms
|
||||
P99 latency: 20.396275ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 4.118969633s
|
||||
Total Events: 50000
|
||||
Events/sec: 12138.96
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 150 MB
|
||||
Avg Latency: 1.937994ms
|
||||
P90 Latency: 2.852802ms
|
||||
P95 Latency: 3.444328ms
|
||||
P99 Latency: 5.727836ms
|
||||
Bottom 10% Avg Latency: 946.456µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.28457886s
|
||||
Total Events: 50000
|
||||
Events/sec: 5385.27
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 259 MB
|
||||
Avg Latency: 2.040218ms
|
||||
P90 Latency: 3.113648ms
|
||||
P95 Latency: 3.901749ms
|
||||
P99 Latency: 6.623842ms
|
||||
Bottom 10% Avg Latency: 930.455µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.684808581s
|
||||
Total Events: 50000
|
||||
Events/sec: 2025.54
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 170 MB
|
||||
Avg Latency: 435.806µs
|
||||
P90 Latency: 909.692µs
|
||||
P95 Latency: 1.063135ms
|
||||
P99 Latency: 1.414473ms
|
||||
Bottom 10% Avg Latency: 1.173081ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.006178379s
|
||||
Total Events: 251672
|
||||
Events/sec: 4194.10
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 159 MB
|
||||
Avg Latency: 4.01666ms
|
||||
P90 Latency: 11.874709ms
|
||||
P95 Latency: 15.051188ms
|
||||
P99 Latency: 22.451758ms
|
||||
Bottom 10% Avg Latency: 16.47537ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.004144652s
|
||||
Total Events: 219001
|
||||
Events/sec: 3649.76
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 154 MB
|
||||
Avg Latency: 2.620549ms
|
||||
P90 Latency: 5.591506ms
|
||||
P95 Latency: 7.482377ms
|
||||
P99 Latency: 20.396275ms
|
||||
Bottom 10% Avg Latency: 10.345145ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T11:11:56+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_relayer-basic_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764846109277147ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764846109277265ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764846109277319ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764846109277325ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764846109277335ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764846109277350ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764846109277355ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764846109277363ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764846109277369ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764846109277389ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764846109277396ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764846109277405ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764846109277410ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764846109277424ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764846109277429ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764846109277439ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764846109277443ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 11:01:49 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 3.829064715s
|
||||
Events/sec: 13058.02
|
||||
Avg latency: 1.792879ms
|
||||
P90 latency: 2.621872ms
|
||||
P95 latency: 3.153103ms
|
||||
P99 latency: 4.914106ms
|
||||
Bottom 10% Avg latency: 919.64µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 406.089196ms
|
||||
Burst completed: 5000 events in 571.162214ms
|
||||
Burst completed: 5000 events in 417.21044ms
|
||||
Burst completed: 5000 events in 388.695149ms
|
||||
Burst completed: 5000 events in 448.68702ms
|
||||
Burst completed: 5000 events in 349.680067ms
|
||||
Burst completed: 5000 events in 352.379547ms
|
||||
Burst completed: 5000 events in 348.007743ms
|
||||
Burst completed: 5000 events in 396.819076ms
|
||||
Burst completed: 5000 events in 388.190088ms
|
||||
Burst test completed: 50000 events in 9.077665116s, errors: 0
|
||||
Events/sec: 5508.02
|
||||
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.750507885s
|
||||
Combined ops/sec: 2020.16
|
||||
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: 272535 queries in 1m0.006407297s
|
||||
Queries/sec: 4541.76
|
||||
Avg query latency: 3.702484ms
|
||||
P95 query latency: 14.064278ms
|
||||
P99 query latency: 21.546984ms
|
||||
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: 236255 operations (186255 queries, 50000 writes) in 1m0.005350378s
|
||||
Operations/sec: 3937.23
|
||||
Avg latency: 2.284443ms
|
||||
Avg query latency: 2.471631ms
|
||||
Avg write latency: 1.58715ms
|
||||
P95 latency: 6.469447ms
|
||||
P99 latency: 17.551758ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 3.829064715s
|
||||
Total Events: 50000
|
||||
Events/sec: 13058.02
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 226 MB
|
||||
Avg Latency: 1.792879ms
|
||||
P90 Latency: 2.621872ms
|
||||
P95 Latency: 3.153103ms
|
||||
P99 Latency: 4.914106ms
|
||||
Bottom 10% Avg Latency: 919.64µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.077665116s
|
||||
Total Events: 50000
|
||||
Events/sec: 5508.02
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 263 MB
|
||||
Avg Latency: 1.938961ms
|
||||
P90 Latency: 2.872088ms
|
||||
P95 Latency: 3.585166ms
|
||||
P99 Latency: 6.443979ms
|
||||
Bottom 10% Avg Latency: 919.151µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.750507885s
|
||||
Total Events: 50000
|
||||
Events/sec: 2020.16
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 173 MB
|
||||
Avg Latency: 448.262µs
|
||||
P90 Latency: 942.865µs
|
||||
P95 Latency: 1.09768ms
|
||||
P99 Latency: 1.554199ms
|
||||
Bottom 10% Avg Latency: 1.241163ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.006407297s
|
||||
Total Events: 272535
|
||||
Events/sec: 4541.76
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 134 MB
|
||||
Avg Latency: 3.702484ms
|
||||
P90 Latency: 10.940029ms
|
||||
P95 Latency: 14.064278ms
|
||||
P99 Latency: 21.546984ms
|
||||
Bottom 10% Avg Latency: 15.564533ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.005350378s
|
||||
Total Events: 236255
|
||||
Events/sec: 3937.23
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 200 MB
|
||||
Avg Latency: 2.284443ms
|
||||
P90 Latency: 4.876796ms
|
||||
P95 Latency: 6.469447ms
|
||||
P99 Latency: 17.551758ms
|
||||
Bottom 10% Avg Latency: 8.957464ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T11:05:08+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -0,0 +1,63 @@
|
||||
Starting Network Graph Traversal Benchmark
|
||||
Relay URL: ws://rely-sqlite:3334
|
||||
Workers: 24
|
||||
Pubkeys: 100000, Follows per pubkey: 1-1000
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ NETWORK GRAPH TRAVERSAL BENCHMARK (100k Pubkeys) ║
|
||||
║ Relay: ws://rely-sqlite:3334 ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
Generating 100000 deterministic pubkeys...
|
||||
2025/12/04 11:12:01 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Generated 10000/100000 pubkeys...
|
||||
Generated 20000/100000 pubkeys...
|
||||
Generated 30000/100000 pubkeys...
|
||||
Generated 40000/100000 pubkeys...
|
||||
Generated 50000/100000 pubkeys...
|
||||
Generated 60000/100000 pubkeys...
|
||||
Generated 70000/100000 pubkeys...
|
||||
Generated 80000/100000 pubkeys...
|
||||
Generated 90000/100000 pubkeys...
|
||||
Generated 100000/100000 pubkeys...
|
||||
Generated 100000 pubkeys in 2.699112464s
|
||||
Generating follow graph (1-1000 follows per pubkey)...
|
||||
Generated follow lists for 10000/100000 pubkeys...
|
||||
Generated follow lists for 20000/100000 pubkeys...
|
||||
Generated follow lists for 30000/100000 pubkeys...
|
||||
Generated follow lists for 40000/100000 pubkeys...
|
||||
Generated follow lists for 50000/100000 pubkeys...
|
||||
Generated follow lists for 60000/100000 pubkeys...
|
||||
Generated follow lists for 70000/100000 pubkeys...
|
||||
Generated follow lists for 80000/100000 pubkeys...
|
||||
Generated follow lists for 90000/100000 pubkeys...
|
||||
Generated follow lists for 100000/100000 pubkeys...
|
||||
Generated follow graph in 5.172393834s (avg 500.5 follows/pubkey, total 50048088 follows)
|
||||
|
||||
Connecting to relay: ws://rely-sqlite:3334
|
||||
Connected successfully!
|
||||
Creating follow list events via WebSocket...
|
||||
Queued 10000/100000 follow list events...
|
||||
Queued 20000/100000 follow list events...
|
||||
Queued 30000/100000 follow list events...
|
||||
Queued 40000/100000 follow list events...
|
||||
Queued 50000/100000 follow list events...
|
||||
Queued 60000/100000 follow list events...
|
||||
Queued 70000/100000 follow list events...
|
||||
Queued 80000/100000 follow list events...
|
||||
Queued 90000/100000 follow list events...
|
||||
Queued 100000/100000 follow list events...
|
||||
Created 100000 follow list events in 1m47.750797847s (928.07 events/sec, errors: 0)
|
||||
Avg latency: 5.218453ms, P95: 30.619168ms, P99: 66.455368ms
|
||||
|
||||
Waiting for events to be processed...
|
||||
|
||||
=== Third-Degree Graph Traversal Benchmark (Network) ===
|
||||
Traversing 3 degrees of follows via WebSocket...
|
||||
Sampling 1000 pubkeys for traversal...
|
||||
Killed
|
||||
|
||||
RELAY_NAME: rely-sqlite
|
||||
RELAY_URL: ws://rely-sqlite:3334
|
||||
TEST_TYPE: Graph Traversal
|
||||
STATUS: FAILED
|
||||
TEST_TIMESTAMP: 2025-12-04T13:18:55+00:00
|
||||
@@ -0,0 +1,202 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_rely-sqlite_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764845084601162ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764845084601278ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764845084601338ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764845084601353ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764845084601368ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764845084601398ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764845084601404ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764845084601425ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764845084601432ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764845084601453ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764845084601459ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764845084601470ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764845084601476ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764845084601492ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764845084601498ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764845084601512ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764845084601518ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 10:44:44 INFO: Extracted embedded libsecp256k1 to /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
2025/12/04 10:44:44 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 4.863868097s
|
||||
Events/sec: 10279.88
|
||||
Avg latency: 2.303586ms
|
||||
P90 latency: 3.506294ms
|
||||
P95 latency: 4.26606ms
|
||||
P99 latency: 6.589692ms
|
||||
Bottom 10% Avg latency: 1.039748ms
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 490.290781ms
|
||||
Burst completed: 5000 events in 660.13017ms
|
||||
Burst completed: 5000 events in 395.417016ms
|
||||
Burst completed: 5000 events in 386.572933ms
|
||||
Burst completed: 5000 events in 453.417446ms
|
||||
Burst completed: 5000 events in 431.074552ms
|
||||
Burst completed: 5000 events in 425.56635ms
|
||||
Burst completed: 5000 events in 480.609672ms
|
||||
Burst completed: 5000 events in 491.483839ms
|
||||
Burst completed: 5000 events in 855.851556ms
|
||||
Burst test completed: 50000 events in 10.076554319s, errors: 0
|
||||
Events/sec: 4962.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.99725206s
|
||||
Combined ops/sec: 2000.22
|
||||
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: 248134 queries in 1m0.010897965s
|
||||
Queries/sec: 4134.82
|
||||
Avg query latency: 4.008215ms
|
||||
P95 query latency: 15.241611ms
|
||||
P99 query latency: 23.364071ms
|
||||
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: 223423 operations (173423 queries, 50000 writes) in 1m0.003723611s
|
||||
Operations/sec: 3723.49
|
||||
Avg latency: 2.490436ms
|
||||
Avg query latency: 2.752076ms
|
||||
Avg write latency: 1.582945ms
|
||||
P95 latency: 7.431916ms
|
||||
P99 latency: 18.31948ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 4.863868097s
|
||||
Total Events: 50000
|
||||
Events/sec: 10279.88
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 210 MB
|
||||
Avg Latency: 2.303586ms
|
||||
P90 Latency: 3.506294ms
|
||||
P95 Latency: 4.26606ms
|
||||
P99 Latency: 6.589692ms
|
||||
Bottom 10% Avg Latency: 1.039748ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 10.076554319s
|
||||
Total Events: 50000
|
||||
Events/sec: 4962.01
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 306 MB
|
||||
Avg Latency: 2.440058ms
|
||||
P90 Latency: 3.974234ms
|
||||
P95 Latency: 5.200288ms
|
||||
P99 Latency: 9.335708ms
|
||||
Bottom 10% Avg Latency: 1.00845ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.99725206s
|
||||
Total Events: 50000
|
||||
Events/sec: 2000.22
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 270 MB
|
||||
Avg Latency: 457.992µs
|
||||
P90 Latency: 957.983µs
|
||||
P95 Latency: 1.136012ms
|
||||
P99 Latency: 1.617368ms
|
||||
Bottom 10% Avg Latency: 1.292479ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.010897965s
|
||||
Total Events: 248134
|
||||
Events/sec: 4134.82
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 138 MB
|
||||
Avg Latency: 4.008215ms
|
||||
P90 Latency: 11.8477ms
|
||||
P95 Latency: 15.241611ms
|
||||
P99 Latency: 23.364071ms
|
||||
Bottom 10% Avg Latency: 16.87008ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.003723611s
|
||||
Total Events: 223423
|
||||
Events/sec: 3723.49
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 195 MB
|
||||
Avg Latency: 2.490436ms
|
||||
P90 Latency: 5.497334ms
|
||||
P95 Latency: 7.431916ms
|
||||
P99 Latency: 18.31948ms
|
||||
Bottom 10% Avg Latency: 9.827857ms
|
||||
----------------------------------------
|
||||
|
||||
Report saved to: /tmp/benchmark_rely-sqlite_8/benchmark_report.txt
|
||||
AsciiDoc report saved to: /tmp/benchmark_rely-sqlite_8/benchmark_report.adoc
|
||||
|
||||
RELAY_NAME: rely-sqlite
|
||||
RELAY_URL: ws://rely-sqlite:3334
|
||||
TEST_TIMESTAMP: 2025-12-04T10:48:05+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
201
cmd/benchmark/reports/run_20251204_104444/strfry_results.txt
Normal file
201
cmd/benchmark/reports/run_20251204_104444/strfry_results.txt
Normal file
@@ -0,0 +1,201 @@
|
||||
Starting Nostr Relay Benchmark (Badger Backend)
|
||||
Data Directory: /tmp/benchmark_strfry_8
|
||||
Events: 50000, Workers: 24, Duration: 1m0s
|
||||
1764846313173994ℹ️ migrating to version 1... /build/pkg/database/migrations.go:68
|
||||
1764846313174100ℹ️ migrating to version 2... /build/pkg/database/migrations.go:75
|
||||
1764846313174135ℹ️ migrating to version 3... /build/pkg/database/migrations.go:82
|
||||
1764846313174143ℹ️ cleaning up ephemeral events (kinds 20000-29999)... /build/pkg/database/migrations.go:304
|
||||
1764846313174154ℹ️ cleaned up 0 ephemeral events from database /build/pkg/database/migrations.go:349
|
||||
1764846313174172ℹ️ migrating to version 4... /build/pkg/database/migrations.go:89
|
||||
1764846313174177ℹ️ converting events to optimized inline storage (Reiser4 optimization)... /build/pkg/database/migrations.go:357
|
||||
1764846313174193ℹ️ found 0 events to convert (0 regular, 0 replaceable, 0 addressable) /build/pkg/database/migrations.go:446
|
||||
1764846313174199ℹ️ migration complete: converted 0 events to optimized inline storage, deleted 0 old keys /build/pkg/database/migrations.go:555
|
||||
1764846313174215ℹ️ migrating to version 5... /build/pkg/database/migrations.go:96
|
||||
1764846313174222ℹ️ re-encoding events with optimized tag binary format... /build/pkg/database/migrations.go:562
|
||||
1764846313174232ℹ️ found 0 events with e/p tags to re-encode /build/pkg/database/migrations.go:649
|
||||
1764846313174238ℹ️ no events need re-encoding /build/pkg/database/migrations.go:652
|
||||
1764846313174259ℹ️ migrating to version 6... /build/pkg/database/migrations.go:103
|
||||
1764846313174264ℹ️ converting events to compact serial-reference format... /build/pkg/database/migrations.go:706
|
||||
1764846313174274ℹ️ found 0 events to convert to compact format /build/pkg/database/migrations.go:846
|
||||
1764846313174282ℹ️ no events need conversion /build/pkg/database/migrations.go:849
|
||||
|
||||
╔════════════════════════════════════════════════════════╗
|
||||
║ BADGER BACKEND BENCHMARK SUITE ║
|
||||
╚════════════════════════════════════════════════════════╝
|
||||
|
||||
=== Starting Badger benchmark ===
|
||||
RunPeakThroughputTest (Badger)..
|
||||
|
||||
=== Peak Throughput Test ===
|
||||
2025/12/04 11:05:13 INFO: Successfully loaded embedded libsecp256k1 v5.0.0 from /tmp/orly-libsecp256k1/libsecp256k1.so
|
||||
Events saved: 50000/50000 (100.0%), errors: 0
|
||||
Duration: 3.876849434s
|
||||
Events/sec: 12897.07
|
||||
Avg latency: 1.815658ms
|
||||
P90 latency: 2.61564ms
|
||||
P95 latency: 3.107597ms
|
||||
P99 latency: 5.258081ms
|
||||
Bottom 10% Avg latency: 919.54µs
|
||||
Wiping database between tests...
|
||||
RunBurstPatternTest (Badger)..
|
||||
|
||||
=== Burst Pattern Test ===
|
||||
Burst completed: 5000 events in 399.187129ms
|
||||
Burst completed: 5000 events in 388.99822ms
|
||||
Burst completed: 5000 events in 402.825697ms
|
||||
Burst completed: 5000 events in 402.426226ms
|
||||
Burst completed: 5000 events in 509.746009ms
|
||||
Burst completed: 5000 events in 360.327121ms
|
||||
Burst completed: 5000 events in 354.620576ms
|
||||
Burst completed: 5000 events in 340.233233ms
|
||||
Burst completed: 5000 events in 484.991889ms
|
||||
Burst completed: 5000 events in 450.540384ms
|
||||
Burst test completed: 50000 events in 9.101582141s, errors: 0
|
||||
Events/sec: 5493.55
|
||||
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.968859674s
|
||||
Combined ops/sec: 2002.49
|
||||
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: 261904 queries in 1m0.006069229s
|
||||
Queries/sec: 4364.63
|
||||
Avg query latency: 3.860709ms
|
||||
P95 query latency: 14.612102ms
|
||||
P99 query latency: 22.708667ms
|
||||
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: 230898 operations (180898 queries, 50000 writes) in 1m0.007085265s
|
||||
Operations/sec: 3847.85
|
||||
Avg latency: 2.400221ms
|
||||
Avg query latency: 2.609803ms
|
||||
Avg write latency: 1.641962ms
|
||||
P95 latency: 6.834352ms
|
||||
P99 latency: 18.125521ms
|
||||
|
||||
=== Badger benchmark completed ===
|
||||
|
||||
|
||||
================================================================================
|
||||
BENCHMARK REPORT
|
||||
================================================================================
|
||||
|
||||
Test: Peak Throughput
|
||||
Duration: 3.876849434s
|
||||
Total Events: 50000
|
||||
Events/sec: 12897.07
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 194 MB
|
||||
Avg Latency: 1.815658ms
|
||||
P90 Latency: 2.61564ms
|
||||
P95 Latency: 3.107597ms
|
||||
P99 Latency: 5.258081ms
|
||||
Bottom 10% Avg Latency: 919.54µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Burst Pattern
|
||||
Duration: 9.101582141s
|
||||
Total Events: 50000
|
||||
Events/sec: 5493.55
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 189 MB
|
||||
Avg Latency: 1.954573ms
|
||||
P90 Latency: 2.922786ms
|
||||
P95 Latency: 3.66591ms
|
||||
P99 Latency: 6.353176ms
|
||||
Bottom 10% Avg Latency: 904.101µs
|
||||
----------------------------------------
|
||||
|
||||
Test: Mixed Read/Write
|
||||
Duration: 24.968859674s
|
||||
Total Events: 50000
|
||||
Events/sec: 2002.49
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 188 MB
|
||||
Avg Latency: 443.895µs
|
||||
P90 Latency: 930.312µs
|
||||
P95 Latency: 1.08191ms
|
||||
P99 Latency: 1.476191ms
|
||||
Bottom 10% Avg Latency: 1.222569ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Query Performance
|
||||
Duration: 1m0.006069229s
|
||||
Total Events: 261904
|
||||
Events/sec: 4364.63
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 198 MB
|
||||
Avg Latency: 3.860709ms
|
||||
P90 Latency: 11.381821ms
|
||||
P95 Latency: 14.612102ms
|
||||
P99 Latency: 22.708667ms
|
||||
Bottom 10% Avg Latency: 16.28305ms
|
||||
----------------------------------------
|
||||
|
||||
Test: Concurrent Query/Store
|
||||
Duration: 1m0.007085265s
|
||||
Total Events: 230898
|
||||
Events/sec: 3847.85
|
||||
Success Rate: 100.0%
|
||||
Concurrent Workers: 24
|
||||
Memory Used: 178 MB
|
||||
Avg Latency: 2.400221ms
|
||||
P90 Latency: 5.16819ms
|
||||
P95 Latency: 6.834352ms
|
||||
P99 Latency: 18.125521ms
|
||||
Bottom 10% Avg Latency: 9.340478ms
|
||||
----------------------------------------
|
||||
|
||||
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-12-04T11:08:32+00:00
|
||||
BENCHMARK_CONFIG:
|
||||
Events: 50000
|
||||
Workers: 24
|
||||
Duration: 60s
|
||||
@@ -1 +1 @@
|
||||
v0.34.0
|
||||
v0.34.1
|
||||
Reference in New Issue
Block a user