@peerbit/pubsub 4.1.4 → 5.0.0-b712c6b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +23 -20
  2. package/dist/benchmark/fanout-tree-sim-lib.d.ts +201 -0
  3. package/dist/benchmark/fanout-tree-sim-lib.d.ts.map +1 -0
  4. package/dist/benchmark/fanout-tree-sim-lib.js +1225 -0
  5. package/dist/benchmark/fanout-tree-sim-lib.js.map +1 -0
  6. package/dist/benchmark/fanout-tree-sim.d.ts +11 -0
  7. package/dist/benchmark/fanout-tree-sim.d.ts.map +1 -0
  8. package/dist/benchmark/fanout-tree-sim.js +521 -0
  9. package/dist/benchmark/fanout-tree-sim.js.map +1 -0
  10. package/dist/benchmark/index.d.ts +6 -0
  11. package/dist/benchmark/index.d.ts.map +1 -1
  12. package/dist/benchmark/index.js +38 -80
  13. package/dist/benchmark/index.js.map +1 -1
  14. package/dist/benchmark/pubsub-topic-sim-lib.d.ts +82 -0
  15. package/dist/benchmark/pubsub-topic-sim-lib.d.ts.map +1 -0
  16. package/dist/benchmark/pubsub-topic-sim-lib.js +625 -0
  17. package/dist/benchmark/pubsub-topic-sim-lib.js.map +1 -0
  18. package/dist/benchmark/pubsub-topic-sim.d.ts +9 -0
  19. package/dist/benchmark/pubsub-topic-sim.d.ts.map +1 -0
  20. package/dist/benchmark/pubsub-topic-sim.js +116 -0
  21. package/dist/benchmark/pubsub-topic-sim.js.map +1 -0
  22. package/dist/benchmark/sim/bench-utils.d.ts +25 -0
  23. package/dist/benchmark/sim/bench-utils.d.ts.map +1 -0
  24. package/dist/benchmark/sim/bench-utils.js +141 -0
  25. package/dist/benchmark/sim/bench-utils.js.map +1 -0
  26. package/dist/src/fanout-channel.d.ts +62 -0
  27. package/dist/src/fanout-channel.d.ts.map +1 -0
  28. package/dist/src/fanout-channel.js +114 -0
  29. package/dist/src/fanout-channel.js.map +1 -0
  30. package/dist/src/fanout-tree.d.ts +551 -0
  31. package/dist/src/fanout-tree.d.ts.map +1 -0
  32. package/dist/src/fanout-tree.js +4980 -0
  33. package/dist/src/fanout-tree.js.map +1 -0
  34. package/dist/src/index.d.ts +168 -39
  35. package/dist/src/index.d.ts.map +1 -1
  36. package/dist/src/index.js +1416 -457
  37. package/dist/src/index.js.map +1 -1
  38. package/dist/src/topic-root-control-plane.d.ts +43 -0
  39. package/dist/src/topic-root-control-plane.d.ts.map +1 -0
  40. package/dist/src/topic-root-control-plane.js +120 -0
  41. package/dist/src/topic-root-control-plane.js.map +1 -0
  42. package/package.json +11 -10
  43. package/src/fanout-channel.ts +150 -0
  44. package/src/fanout-tree.ts +6346 -0
  45. package/src/index.ts +1693 -591
  46. package/src/topic-root-control-plane.ts +160 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fanout-tree-sim.js","sourceRoot":"","sources":["../../benchmark/fanout-tree-sim.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,8 @@
1
+ /**
2
+ * Benchmark entrypoint (wired to `pnpm -C packages/transport/pubsub run bench`).
3
+ *
4
+ * Examples:
5
+ * pnpm -C packages/transport/pubsub run bench -- topic-sim --nodes 2000 --degree 6
6
+ */
1
7
  export {};
2
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../benchmark/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../benchmark/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,84 +1,42 @@
1
- import { tcp } from "@libp2p/tcp";
2
- import { TestSession } from "@peerbit/libp2p-test-utils";
3
- import { DataEvent } from "@peerbit/pubsub-interface";
4
- import { waitForNeighbour } from "@peerbit/stream";
5
- import B from "benchmark";
6
- import crypto from "crypto";
7
- import { DirectSub } from "../src/index.js";
8
- // Run with "node --loader ts-node/esm ./benchmark/index.ts"
9
- // size: 1kb x 1,722 ops/sec ±1.89% (82 runs sampled)
10
- // size: 1000kb x 107 ops/sec ±2.02% (85 runs sampled)
11
- const session = await TestSession.disconnected(4, {
12
- transports: [tcp()],
13
- services: {
14
- pubsub: (c) => new DirectSub(c, {
15
- canRelayMessage: true,
16
- connectionManager: false,
17
- }),
18
- },
19
- });
20
- await session.connect([
21
- [session.peers[0], session.peers[1]],
22
- [session.peers[1], session.peers[2]],
23
- [session.peers[2], session.peers[3]],
24
- ]);
25
- /*
26
- ┌─┐
27
- │1│
28
- └┬┘
29
- ┌▽┐
30
- │2│
31
- └┬┘
32
- ┌▽┐
33
- │3│
34
- └┬┘
35
- ┌▽┐
36
- │4│
37
- └─┘
38
-
1
+ /**
2
+ * Benchmark entrypoint (wired to `pnpm -C packages/transport/pubsub run bench`).
3
+ *
4
+ * Examples:
5
+ * pnpm -C packages/transport/pubsub run bench -- topic-sim --nodes 2000 --degree 6
39
6
  */
40
- const TOPIC = "world";
41
- session.peers[session.peers.length - 1].services.pubsub.subscribe(TOPIC);
42
- await waitForNeighbour(session.peers[0].services.pubsub, session.peers[1].services.pubsub);
43
- await waitForNeighbour(session.peers[1].services.pubsub, session.peers[2].services.pubsub);
44
- await waitForNeighbour(session.peers[2].services.pubsub, session.peers[3].services.pubsub);
45
- let suite = new B.Suite();
46
- let listener = undefined;
47
- const msgMap = new Map();
48
- const msgIdFn = (msg) => {
49
- return crypto.createHash("sha1").update(msg.subarray(0, 20)).digest("base64");
7
+ const argv = process.argv.slice(2);
8
+ const bench = argv[0] === "--" ? argv[1] : argv[0];
9
+ const usage = () => {
10
+ console.log([
11
+ "@peerbit/pubsub benchmarks",
12
+ "",
13
+ "Usage:",
14
+ " pnpm -C packages/transport/pubsub run bench -- <benchmark> [args]",
15
+ "",
16
+ "Benchmarks:",
17
+ " topic-sim in-memory TopicControlPlane topic fanout sim",
18
+ " fanout-tree-sim end-to-end FanoutTree protocol sim (bootstrap tracker join)",
19
+ "",
20
+ "Example:",
21
+ " pnpm -C packages/transport/pubsub run bench -- topic-sim --nodes 3 --degree 2 --subscribers 2 --messages 5 --msgSize 32 --intervalMs 0 --seed 1 --subscribeModel preseed --timeoutMs 300000",
22
+ " pnpm -C packages/transport/pubsub run bench -- topic-sim --nodes 2000 --degree 6 --subscribers 1500 --messages 200",
23
+ " pnpm -C packages/transport/pubsub run bench -- fanout-tree-sim --preset live --nodes 2000 --bootstraps 1 --seed 1",
24
+ ].join("\n"));
50
25
  };
51
- const sizes = [1e3, 1e6];
52
- for (const size of sizes) {
53
- suite = suite.add("size: " + size / 1e3 + "kb", {
54
- defer: true,
55
- fn: (deferred) => {
56
- const small = crypto.randomBytes(size); // 1kb
57
- msgMap.set(msgIdFn(small), deferred);
58
- session.peers[0].services.pubsub.publish(small, { topics: [TOPIC] });
59
- },
60
- setup: () => {
61
- listener = (msg) => {
62
- msgMap.get(msgIdFn(msg.detail.data.data)).resolve();
63
- };
64
- session.peers[session.peers.length - 1].services.pubsub.addEventListener("data", listener);
65
- msgMap.clear();
66
- },
67
- teardown: () => {
68
- session.peers[session.peers.length - 1].services.pubsub.removeEventListener("data", listener);
69
- },
70
- });
26
+ if (!bench || bench === "--help" || bench === "-h") {
27
+ usage();
28
+ process.exit(1);
71
29
  }
72
- suite
73
- .on("cycle", (event) => {
74
- console.log(String(event.target));
75
- })
76
- .on("error", (e) => {
77
- console.error(e);
78
- throw e;
79
- })
80
- .on("complete", function (...args) {
81
- session.stop();
82
- })
83
- .run({ async: true });
30
+ switch (bench) {
31
+ case "topic-sim":
32
+ await import("./pubsub-topic-sim.js");
33
+ break;
34
+ case "fanout-tree-sim":
35
+ await import("./fanout-tree-sim.js");
36
+ break;
37
+ default:
38
+ usage();
39
+ process.exit(1);
40
+ }
41
+ export {};
84
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../benchmark/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../benchmark/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEnD,MAAM,KAAK,GAAG,GAAG,EAAE;IAClB,OAAO,CAAC,GAAG,CACV;QACC,4BAA4B;QAC5B,EAAE;QACF,QAAQ;QACR,qEAAqE;QACrE,EAAE;QACF,aAAa;QACb,2DAA2D;QAC3D,gFAAgF;QAChF,EAAE;QACF,UAAU;QACV,+LAA+L;QAC/L,sHAAsH;QACtH,qHAAqH;KACrH,CAAC,IAAI,CAAC,IAAI,CAAC,CACZ,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;IACpD,KAAK,EAAE,CAAC;IACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,QAAQ,KAAK,EAAE,CAAC;IACf,KAAK,WAAW;QACf,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACtC,MAAM;IACP,KAAK,iBAAiB;QACrB,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACrC,MAAM;IACP;QACC,KAAK,EAAE,CAAC;QACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
@@ -0,0 +1,82 @@
1
+ export type PubsubTopicSimParams = {
2
+ nodes: number;
3
+ degree: number;
4
+ writerIndex: number;
5
+ fanoutTopic: boolean;
6
+ fanoutRootIndex: number;
7
+ subscribers: number;
8
+ messages: number;
9
+ msgSize: number;
10
+ intervalMs: number;
11
+ silent: boolean;
12
+ redundancy: number;
13
+ seed: number;
14
+ topic: string;
15
+ subscribeModel: "real" | "preseed";
16
+ subscriptionDebounceDelayMs: number;
17
+ warmupMs: number;
18
+ warmupMessages: number;
19
+ settleMs: number;
20
+ timeoutMs: number;
21
+ dialConcurrency: number;
22
+ dialer: boolean;
23
+ pruner: boolean;
24
+ prunerIntervalMs: number;
25
+ prunerMaxBufferBytes: number;
26
+ dialDelayMs: number;
27
+ streamRxDelayMs: number;
28
+ streamHighWaterMarkBytes: number;
29
+ dropDataFrameRate: number;
30
+ maxLatencySamples: number;
31
+ churnEveryMs: number;
32
+ churnDownMs: number;
33
+ churnFraction: number;
34
+ churnRedialIntervalMs: number;
35
+ churnRedialConcurrency: number;
36
+ };
37
+ export type PubsubTopicSimResult = {
38
+ params: PubsubTopicSimParams;
39
+ subscriberCount: number;
40
+ writerKnown: number;
41
+ subscribeMs: number;
42
+ warmupMs: number;
43
+ publishMs: number;
44
+ expected: number;
45
+ expectedOnline: number;
46
+ deliveredUnique: number;
47
+ deliveredPct: number;
48
+ deliveredOnlinePct: number;
49
+ duplicates: number;
50
+ publishErrors: number;
51
+ latencySamples: number;
52
+ latencyP50: number;
53
+ latencyP95: number;
54
+ latencyP99: number;
55
+ latencyMax: number;
56
+ modeToLenAvg: number;
57
+ modeToLenMax: number;
58
+ modeToLenSamples: number;
59
+ churnEvents: number;
60
+ churnedPeersTotal: number;
61
+ connectionsNow: number;
62
+ avgNeighbours: number;
63
+ avgRoutes: number;
64
+ avgQueuedBytes: number;
65
+ maxQueuedBytes: number;
66
+ framesSent: number;
67
+ dataFramesSent: number;
68
+ ackFramesSent: number;
69
+ goodbyeFramesSent: number;
70
+ otherFramesSent: number;
71
+ framesDropped: number;
72
+ dataFramesDropped: number;
73
+ bytesSent: number;
74
+ bytesDropped: number;
75
+ memoryRssMiB: number;
76
+ memoryHeapUsedMiB: number;
77
+ memoryHeapTotalMiB: number;
78
+ };
79
+ export declare const resolvePubsubTopicSimParams: (input: Partial<PubsubTopicSimParams>) => PubsubTopicSimParams;
80
+ export declare const formatPubsubTopicSimResult: (r: PubsubTopicSimResult) => string;
81
+ export declare const runPubsubTopicSim: (input: Partial<PubsubTopicSimParams>) => Promise<PubsubTopicSimResult>;
82
+ //# sourceMappingURL=pubsub-topic-sim-lib.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pubsub-topic-sim-lib.d.ts","sourceRoot":"","sources":["../../benchmark/pubsub-topic-sim-lib.ts"],"names":[],"mappings":"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"}