UNPKG

reliable-zeromq

Version:

A collection of reliable zeromq messaging constructs

53 lines 3.79 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const simple_perf_1 = require("simple-perf"); const Delay_1 = require("../../Src/Utils/Delay"); const ZMQPublisher_1 = require("../../Src/ZMQPublisher"); const ZMQSubscriber_1 = require("../../Src/ZMQSubscriber/ZMQSubscriber"); const TestEndpoint_1 = __importDefault(require("../Helpers/TestEndpoint")); const lPublishEndpoint = TestEndpoint_1.default.GetEndpoint("PublishPerformance"); const lRecoveryEndpoint = TestEndpoint_1.default.GetEndpoint("PublishRecoveryPerformance"); const lPublisher = new ZMQPublisher_1.ZMQPublisher({ PublisherAddress: lPublishEndpoint, RequestAddress: lRecoveryEndpoint, }); const lSubscriber = new ZMQSubscriber_1.ZMQSubscriber(); let lCallback = undefined; function Resolver(aMessage) { lCallback(aMessage); } lSubscriber.Subscribe({ PublisherAddress: lPublishEndpoint, RequestAddress: lRecoveryEndpoint, }, "PerfTest", Resolver); function PublishReceive() { lPublisher.Publish("PerfTest", "PerfData"); return new Promise((aResolve) => { lCallback = aResolve; }); } const lBenchmarks = [ new simple_perf_1.PerfTest({ Name: "PublishSubscribe > Synchronous Throughput", Function: PublishReceive, FunctionReturnsPromise: true, Console: true, State: [ { Key: "lPublisher", Value: lPublisher }, ], }), ]; async function RunTests(aBenchmarks) { await lPublisher.Open(); await Delay_1.Delay(500); for (let i = 0; i < aBenchmarks.length; ++i) { await aBenchmarks[i].Run(); } lSubscriber.Close(); lPublisher.Close(); } RunTests(lBenchmarks); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiWk1RUHVibGlzaFN1YnNjcmliZS5wZXJmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vVGVzdC9QZXJmb3JtYW5jZS9aTVFQdWJsaXNoU3Vic2NyaWJlLnBlcmYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBdUM7QUFDdkMsaURBQThDO0FBQzlDLHlEQUFzRDtBQUN0RCx5RUFBc0U7QUFDdEUsMkVBQW1EO0FBRW5ELE1BQU0sZ0JBQWdCLEdBQVcsc0JBQVksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsQ0FBQztBQUNoRixNQUFNLGlCQUFpQixHQUFXLHNCQUFZLENBQUMsV0FBVyxDQUFDLDRCQUE0QixDQUFDLENBQUM7QUFDekYsTUFBTSxVQUFVLEdBQWlCLElBQUksMkJBQVksQ0FDN0M7SUFDSSxnQkFBZ0IsRUFBRSxnQkFBZ0I7SUFDbEMsY0FBYyxFQUFFLGlCQUFpQjtDQUNwQyxDQUNKLENBQUM7QUFDRixNQUFNLFdBQVcsR0FBa0IsSUFBSSw2QkFBYSxFQUFFLENBQUM7QUFFdkQsSUFBSSxTQUFTLEdBQStCLFNBQVUsQ0FBQztBQUN2RCxTQUFTLFFBQVEsQ0FBQyxRQUFnQjtJQUU5QixTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDeEIsQ0FBQztBQUNELFdBQVcsQ0FBQyxTQUFTLENBQ2pCO0lBQ0ksZ0JBQWdCLEVBQUUsZ0JBQWdCO0lBQ2xDLGNBQWMsRUFBRSxpQkFBaUI7Q0FDcEMsRUFDRCxVQUFVLEVBQ1YsUUFBUSxDQUNYLENBQUM7QUFFRixTQUFTLGNBQWM7SUFFbkIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFFM0MsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLFFBQW9CLEVBQVEsRUFBRTtRQUU5QyxTQUFTLEdBQUcsUUFBUSxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sV0FBVyxHQUNqQjtJQUNJLElBQUksc0JBQVEsQ0FDUjtRQUNJLElBQUksRUFBRSwyQ0FBMkM7UUFDakQsUUFBUSxFQUFFLGNBQWM7UUFDeEIsc0JBQXNCLEVBQUUsSUFBSTtRQUM1QixPQUFPLEVBQUUsSUFBSTtRQUNiLEtBQUssRUFBRTtZQUNILEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO1NBQzNDO0tBQ0osQ0FDSjtDQUNKLENBQUM7QUFFRixLQUFLLFVBQVUsUUFBUSxDQUFDLFdBQXVCO0lBRTNDLE1BQU0sVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLE1BQU0sYUFBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWpCLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxXQUFXLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUNuRDtRQUNJLE1BQU0sV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO0tBQzlCO0lBRUQsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BCLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUN2QixDQUFDO0FBRUQsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDIn0=