event-sourcing
event-sourcing copied to clipboard
add projector and projectionist
This is a proof of concept for ticket #295
Hello :wave:
here is the most recent benchmark result:
LoadEventsBench
===============
Average iteration times by variant
110.9ms │ ██
97.0ms │ ██
83.2ms │ ██
69.3ms │ ██
55.4ms │ ██
41.6ms │ ██
27.7ms │ ██
13.9ms │ ██
└────
1
[█ <current>] [█ base]
1: benchLoadEvents
Memory by variant
24.2mb │ ██
21.2mb │ ██
18.2mb │ ██
15.1mb │ ██
12.1mb │ ██
9.1mb │ ██
6.1mb │ ██
3.0mb │ ██
└────
1
[█ <current>] [█ base]
1: benchLoadEvents
+--------------------+--------------------+--------------------+-----------------+------------+
| | time (kde mode) | memory |
+--------------------+--------------------+--------------------+-----------------+------------+
| subject | Tag: <current> | Tag: base | Tag: <current> | Tag: base |
+--------------------+--------------------+--------------------+-----------------+------------+
| benchLoadEvents () | 110.880ms (±1.54%) | 110.217ms (±0.72%) | 24.205mb | 24.203mb |
+--------------------+--------------------+--------------------+-----------------+------------+
LoadEventsWithSnapshotsBench
============================
Average iteration times by variant
296.6μs │ ██
259.5μs │ ██
222.5μs │ ██
185.4μs │ ██
148.3μs │ ██
111.2μs │ ██
74.2μs │ ██
37.1μs │ ██
└────
1
[█ <current>] [█ base]
1: benchLoadEvents
Memory by variant
14.6mb │ ██
12.8mb │ ██
11.0mb │ ██
9.1mb │ ██
7.3mb │ ██
5.5mb │ ██
3.7mb │ ██
1.8mb │ ██
└────
1
[█ <current>] [█ base]
1: benchLoadEvents
+--------------------+--------------------+--------------------+-----------------+------------+
| | time (kde mode) | memory |
+--------------------+--------------------+--------------------+-----------------+------------+
| subject | Tag: <current> | Tag: base | Tag: <current> | Tag: base |
+--------------------+--------------------+--------------------+-----------------+------------+
| benchLoadEvents () | 294.353μs (±0.49%) | 296.605μs (±0.81%) | 14.602mb | 14.600mb |
+--------------------+--------------------+--------------------+-----------------+------------+
WriteEventsBench
================
Average iteration times by variant
51.4ms │ ██
45.0ms │ ██
38.5ms │ ██
32.1ms │ ██
25.7ms │ ██
19.3ms │ ██
12.8ms │ ██
6.4ms │ ▃▃ ██
└───────
1 2
[█ <current>] [█ base]
1: benchSaveOneEvent 2: benchSaveAfterThous᠁
Memory by variant
7.4mb │ ▂▂ ██
6.5mb │ ██ ██
5.6mb │ ██ ██
4.7mb │ ██ ██
3.7mb │ ██ ██
2.8mb │ ██ ██
1.9mb │ ██ ██
930.6kb │ ██ ██
└───────
1 2
[█ <current>] [█ base]
1: benchSaveOneEvent 2: benchSaveAfterThous᠁
+---------------------------------+-------------------+-------------------+-----------------+------------+
| | time (kde mode) | memory |
+---------------------------------+-------------------+-------------------+-----------------+------------+
| subject | Tag: <current> | Tag: base | Tag: <current> | Tag: base |
+---------------------------------+-------------------+-------------------+-----------------+------------+
| benchSaveOneEvent () | 1.888ms (±15.04%) | 2.249ms (±10.09%) | 6.723mb | 6.682mb |
| benchSaveAfterThousandEvents () | 51.399ms (±0.18%) | 51.182ms (±0.60%) | 7.445mb | 7.407mb |
+---------------------------------+-------------------+-------------------+-----------------+------------+
This comment gets update everytime a new commit comes in!
it is on hold and waiting for #317