Documentation Index
Fetch the complete documentation index at: https://abxbus.archivebox.io/llms.txt
Use this file to discover all available pages before exploring further.
uv run pytest tests/test_eventbus_performance.py -vxs # run the performance test suite in Python
| Runtime | 1 bus x 50k events x 1 handler | 500 buses x 100 events x 1 handler | 1 bus x 1 event x 50k parallel handlers | 1 bus x 50k events x 50k one-off handlers | Worst case (N buses x N events x N handlers) |
|---|
| Python | 0.179ms/event, 0.235kb/event | 0.191ms/event, 0.191kb/event | 0.035ms/handler, 8.164kb/handler | 0.255ms/event, 0.185kb/event | 0.351ms/event, 5.867kb/event |
Measured locally on an Apple M4 Pro with:
pnpm run perf:node (node v22.21.1)
pnpm run perf:bun (bun v1.3.9)
pnpm run perf:deno (deno v2.6.8)
pnpm run perf:browser (chrome v145.0.7632.6)
| Runtime | 1 bus x 50k events x 1 handler | 500 buses x 100 events x 1 handler | 1 bus x 1 event x 50k parallel handlers | 1 bus x 50k events x 50k one-off handlers | Worst case (N buses x N events x N handlers) |
|---|
| Node | 0.015ms/event, 0.6kb/event | 0.058ms/event, 0.1kb/event | 0.021ms/handler, 3.8kb/handler | 0.028ms/event, 0.6kb/event | 0.442ms/event, 0.9kb/event |
| Bun | 0.011ms/event, 2.5kb/event | 0.054ms/event, 1.0kb/event | 0.006ms/handler, 4.5kb/handler | 0.019ms/event, 2.8kb/event | 0.441ms/event, 3.1kb/event |
| Deno | 0.018ms/event, 1.2kb/event | 0.063ms/event, 0.4kb/event | 0.024ms/handler, 3.1kb/handler | 0.064ms/event, 2.6kb/event | 0.461ms/event, 7.9kb/event |
| Browser (Chromium) | 0.030ms/event | 0.197ms/event | 0.022ms/handler | 0.022ms/event | 1.566ms/event |
Notes:
kb/event is peak RSS delta per event during active processing (most representative of OS-visible RAM in Activity Monitor / Task Manager, with EventBus.max_history_size=1)
- In
1 bus x 1 event x 50k parallel handlers stats are shown per-handler for clarity, 0.02ms/handler * 50k handlers ~= 1000ms for the entire event
- Browser runtime does not expose memory usage directly, in practice memory performance in-browser is comparable to Node (they both use V8)