@nsshunt/stsappframework 3.1.96 → 3.1.98
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.
- package/.github/workflows/npm-publish.yml +2 -2
- package/dist/ipcMessageManager.js +100 -0
- package/dist/ipcMessageManager.js.map +1 -0
- package/dist/ipcMessageProcessorPrimary.js +30 -10
- package/dist/ipcMessageProcessorPrimary.js.map +1 -1
- package/dist/ipcMessageProcessorWorker.js +36 -79
- package/dist/ipcMessageProcessorWorker.js.map +1 -1
- package/dist/testing/app.js +87 -70
- package/dist/testing/app.js.map +1 -1
- package/dist/testing/appConfig.js +1 -1
- package/package.json +9 -9
- package/runtest2.sh +2 -2
- package/src/commonTypes.ts +1 -0
- package/src/ipcMessageManager.ts +117 -0
- package/src/ipcMessageProcessorPrimary.ts +32 -10
- package/src/ipcMessageProcessorWorker.ts +41 -87
- package/src/testing/app.ts +100 -77
- package/src/testing/appConfig.ts +1 -1
- package/types/authutilsnode.d.ts.map +1 -1
- package/types/commonTypes.d.ts +1 -0
- package/types/commonTypes.d.ts.map +1 -1
- package/types/ipcMessageManager.d.ts +23 -0
- package/types/ipcMessageManager.d.ts.map +1 -0
- package/types/ipcMessageProcessorPrimary.d.ts +4 -2
- package/types/ipcMessageProcessorPrimary.d.ts.map +1 -1
- package/types/ipcMessageProcessorWorker.d.ts +2 -6
- package/types/ipcMessageProcessorWorker.d.ts.map +1 -1
- package/types/kafka/IMKafkaManager.d.ts.map +1 -1
- package/types/kafka/kafkaconsumer.d.ts.map +1 -1
- package/types/kafka/kafkamanager.d.ts.map +1 -1
- package/types/kafka/kafkaproducer.d.ts.map +1 -1
- package/types/socketIoServerHelper.d.ts.map +1 -1
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
|
|
4
|
+
import { ISTSLogger, JSONObject } from '@nsshunt/stsutils'
|
|
5
|
+
|
|
6
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
7
|
+
|
|
8
|
+
import { IIPCMessageProcessorIPCPayload, IIPCMessageProcessorWorkerRecord } from './commonTypes'
|
|
9
|
+
|
|
10
|
+
export interface IPCMessageManagerOptions {
|
|
11
|
+
logger: ISTSLogger
|
|
12
|
+
requestResponseMessageTimeout: number
|
|
13
|
+
namespace: string
|
|
14
|
+
messageSender: (payload: IIPCMessageProcessorIPCPayload) => void
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* todo
|
|
18
|
+
* @typedef {Object} options - todo
|
|
19
|
+
* @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
|
|
20
|
+
*/
|
|
21
|
+
export class IPCMessageManager
|
|
22
|
+
{
|
|
23
|
+
#options: IPCMessageManagerOptions;
|
|
24
|
+
#inflightMessages: Record<string, IIPCMessageProcessorWorkerRecord> = { };
|
|
25
|
+
#messageHeader: string;
|
|
26
|
+
|
|
27
|
+
constructor(options: IPCMessageManagerOptions) {
|
|
28
|
+
this.#options = options;
|
|
29
|
+
this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
#LogDebugMessage(message: any) {
|
|
33
|
+
this.#options.logger.debug(message);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
|
|
37
|
+
ReceivedMessageFromMaster(msg: any) {
|
|
38
|
+
// Override in subclass if required
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
SendMessage = (payload: JSONObject): Promise<JSONObject> => {
|
|
42
|
+
return new Promise((resolve, reject) => {
|
|
43
|
+
this.#SendMessage(payload,
|
|
44
|
+
(payload: IIPCMessageProcessorIPCPayload) => {
|
|
45
|
+
resolve(payload.responsePayload);
|
|
46
|
+
},
|
|
47
|
+
(payload: IIPCMessageProcessorIPCPayload) => {
|
|
48
|
+
reject(payload.requestPayload);
|
|
49
|
+
})
|
|
50
|
+
})
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
#SendMessage = (payload: JSONObject,
|
|
54
|
+
callBack: (payload: IIPCMessageProcessorIPCPayload) => void,
|
|
55
|
+
errorCallBack: (payload: IIPCMessageProcessorIPCPayload) => void
|
|
56
|
+
): void => {
|
|
57
|
+
const messageId: string = uuidv4();
|
|
58
|
+
const requestPayload: IIPCMessageProcessorIPCPayload = {
|
|
59
|
+
header: this.#messageHeader,
|
|
60
|
+
messageId,
|
|
61
|
+
requestPayload: payload,
|
|
62
|
+
responsePayload: { },
|
|
63
|
+
pid: process.pid.toString(),
|
|
64
|
+
messageType: 'REQUEST'
|
|
65
|
+
}
|
|
66
|
+
const messageRecord = {
|
|
67
|
+
messageId,
|
|
68
|
+
requestPayload,
|
|
69
|
+
responses: { }, // record
|
|
70
|
+
startTime: performance.now(),
|
|
71
|
+
endTime: 0,
|
|
72
|
+
timeout: setTimeout(() => {
|
|
73
|
+
this.#LogDebugMessage(chalk.red(`Timeout has occurred after: [${this.#options.requestResponseMessageTimeout}]ms with message id: [${messageRecord.messageId}]. Details: [${JSON.stringify(this.#inflightMessages[messageRecord.messageId].requestPayload)}]`));
|
|
74
|
+
setTimeout(() => {
|
|
75
|
+
delete this.#inflightMessages[messageRecord.messageId];
|
|
76
|
+
}, 0).unref();
|
|
77
|
+
errorCallBack(requestPayload);
|
|
78
|
+
}, this.#options.requestResponseMessageTimeout).unref(),// max message timeout allowed
|
|
79
|
+
callBack,
|
|
80
|
+
errorCallBack
|
|
81
|
+
}
|
|
82
|
+
this.#inflightMessages[messageRecord.messageId] = messageRecord;
|
|
83
|
+
//this.#LogDebugMessage(chalk.cyan(`sending: [${JSON.stringify(requestPayload)}]`));
|
|
84
|
+
this.#options.messageSender(requestPayload);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
ProcessMessage = (msg: any) => {
|
|
88
|
+
if (msg.header && msg.header.localeCompare(this.#messageHeader) === 0) {
|
|
89
|
+
const message = (msg as IIPCMessageProcessorIPCPayload);
|
|
90
|
+
if (this.#inflightMessages[message.messageId]) {
|
|
91
|
+
const inFlightMessageRecord: IIPCMessageProcessorWorkerRecord = this.#inflightMessages[message.messageId];
|
|
92
|
+
inFlightMessageRecord.responses[message.pid] = { ...message };
|
|
93
|
+
inFlightMessageRecord.endTime = performance.now();
|
|
94
|
+
clearTimeout(inFlightMessageRecord.timeout as NodeJS.Timer);
|
|
95
|
+
//this.#LogDebugMessage(chalk.green(`received: [${JSON.stringify(message)}]`));
|
|
96
|
+
inFlightMessageRecord.callBack(message)
|
|
97
|
+
delete this.#inflightMessages[message.messageId];
|
|
98
|
+
} else {
|
|
99
|
+
throw new Error(`Could not find Request/Response message with id: [${message.messageId}]`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
Start = () => {
|
|
105
|
+
this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
Stop = () => {
|
|
109
|
+
// Kill in-flight messages
|
|
110
|
+
for (const [, iPCMessageProcessorWorkerRecord] of Object.entries(this.#inflightMessages)) {
|
|
111
|
+
if (iPCMessageProcessorWorkerRecord.timeout) {
|
|
112
|
+
clearTimeout(iPCMessageProcessorWorkerRecord.timeout);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
this.#inflightMessages = { };
|
|
116
|
+
}
|
|
117
|
+
}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
/* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
|
|
2
|
-
import { ISTSLogger } from '@nsshunt/stsutils'
|
|
3
|
-
import chalk from 'chalk';
|
|
2
|
+
import { ISTSLogger, JSONObject, defaultLogger } from '@nsshunt/stsutils'
|
|
4
3
|
|
|
5
4
|
import { Worker } from 'node:cluster'
|
|
6
5
|
|
|
7
6
|
import { IIPCMessageProcessorIPCPayload } from './commonTypes'
|
|
8
7
|
|
|
8
|
+
import { IPCMessageManager, IPCMessageManagerOptions } from './ipcMessageManager'
|
|
9
|
+
|
|
9
10
|
export interface IIPCMessageProcessorPrimary {
|
|
10
11
|
logger: ISTSLogger
|
|
11
12
|
namespace: string
|
|
12
|
-
processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<
|
|
13
|
+
processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>
|
|
14
|
+
worker: Worker
|
|
13
15
|
}
|
|
14
16
|
/**
|
|
15
17
|
* todo
|
|
@@ -19,33 +21,53 @@ export interface IIPCMessageProcessorPrimary {
|
|
|
19
21
|
export class IPCMessageProcessorPrimary
|
|
20
22
|
{
|
|
21
23
|
#options: IIPCMessageProcessorPrimary;
|
|
24
|
+
#ipcMessageManager: IPCMessageManager;
|
|
22
25
|
|
|
23
26
|
constructor(options: IIPCMessageProcessorPrimary) {
|
|
24
27
|
this.#options = options;
|
|
25
|
-
}
|
|
26
28
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
const ipcMessageManagerOptions: IPCMessageManagerOptions = {
|
|
30
|
+
logger: defaultLogger,
|
|
31
|
+
requestResponseMessageTimeout: 2000,
|
|
32
|
+
namespace: options.namespace,
|
|
33
|
+
messageSender: (payload: IIPCMessageProcessorIPCPayload) => {
|
|
34
|
+
(options.worker as any).send(payload);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
this.#ipcMessageManager = new IPCMessageManager(ipcMessageManagerOptions);
|
|
29
38
|
}
|
|
30
39
|
|
|
40
|
+
// Process a message recieved from a worker
|
|
31
41
|
#processMessage = async (worker: Worker, msg: any) => {
|
|
32
42
|
if (msg.header) {
|
|
33
43
|
const checkName = `__STS__${this.#options.namespace}__`;
|
|
34
44
|
if ((msg.header as string).includes(checkName)) {
|
|
35
45
|
const message = (msg as IIPCMessageProcessorIPCPayload);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
46
|
+
if (msg.messageType.localeCompare('REQUEST') === 0) {
|
|
47
|
+
message.responsePayload = await this.#options.processCommand(message);
|
|
48
|
+
message.messageType = 'RESPONSE'
|
|
49
|
+
//this.#LogDebugMessage(chalk.magenta(`sending: [${JSON.stringify(message)}]`))
|
|
50
|
+
worker.send(message);
|
|
51
|
+
} else {
|
|
52
|
+
// Received a response (to my request)
|
|
53
|
+
this.#ipcMessageManager.ProcessMessage(msg);
|
|
54
|
+
}
|
|
40
55
|
}
|
|
41
56
|
}
|
|
42
57
|
}
|
|
43
58
|
|
|
59
|
+
SendMessage = (payload: JSONObject): Promise<JSONObject> => {
|
|
60
|
+
return this.#ipcMessageManager.SendMessage(payload);
|
|
61
|
+
}
|
|
62
|
+
|
|
44
63
|
Start = (worker: Worker) => {
|
|
64
|
+
this.#ipcMessageManager.Start();
|
|
65
|
+
// Receive a message to process from a worker
|
|
45
66
|
worker.on('message', (payload) => this.#processMessage(worker, payload));
|
|
46
67
|
}
|
|
47
68
|
|
|
48
69
|
Stop = (worker: Worker) => {
|
|
49
70
|
worker.off('message', (payload) => this.#processMessage(worker, payload));
|
|
71
|
+
this.#ipcMessageManager.Stop();
|
|
50
72
|
}
|
|
51
73
|
}
|
|
@@ -1,114 +1,68 @@
|
|
|
1
1
|
/* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
|
|
2
|
-
import
|
|
2
|
+
import { ISTSLogger, JSONObject, defaultLogger } from '@nsshunt/stsutils'
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { IIPCMessageProcessorIPCPayload } from './commonTypes'
|
|
5
5
|
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
import { IIPCMessageProcessorIPCPayload, IIPCMessageProcessorWorkerRecord } from './commonTypes'
|
|
6
|
+
import { IPCMessageManager, IPCMessageManagerOptions } from './ipcMessageManager'
|
|
9
7
|
|
|
10
8
|
export interface IIPCMessageProcessorWorker {
|
|
11
9
|
logger: ISTSLogger
|
|
12
10
|
requestResponseMessageTimeout: number
|
|
13
11
|
namespace: string
|
|
12
|
+
processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>
|
|
14
13
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
*/
|
|
20
|
-
export class IPCMessageProcessorWorker
|
|
21
|
-
{
|
|
22
|
-
#options: IIPCMessageProcessorWorker;
|
|
23
|
-
#inflightMessages: Record<string, IIPCMessageProcessorWorkerRecord> = { };
|
|
24
|
-
#messageHeader: string;
|
|
14
|
+
|
|
15
|
+
export class IPCMessageProcessorWorker {
|
|
16
|
+
#options: IIPCMessageProcessorWorker
|
|
17
|
+
#ipcMessageManager: IPCMessageManager;
|
|
25
18
|
|
|
26
19
|
constructor(options: IIPCMessageProcessorWorker) {
|
|
27
20
|
this.#options = options;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
|
|
36
|
-
ReceivedMessageFromMaster(msg: any) {
|
|
37
|
-
// Override in subclass if required
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
SendMessage = (payload: JSONObject): Promise<JSONObject> => {
|
|
41
|
-
return new Promise((resolve, reject) => {
|
|
42
|
-
this.#SendMessageToParentProcess(payload,
|
|
43
|
-
(payload: any) => {
|
|
44
|
-
resolve(payload);
|
|
45
|
-
},
|
|
46
|
-
(payload: any) => {
|
|
47
|
-
reject(payload);
|
|
48
|
-
})
|
|
49
|
-
})
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
#SendMessageToParentProcess = (payload: JSONObject, callBack: (payload: IIPCMessageProcessorIPCPayload) => void, errorCallBack: (payload: IIPCMessageProcessorIPCPayload) => void): void => {
|
|
53
|
-
const messageId: string = uuidv4();
|
|
54
|
-
const requestPayload: IIPCMessageProcessorIPCPayload = {
|
|
55
|
-
header: this.#messageHeader,
|
|
56
|
-
messageId,
|
|
57
|
-
requestPayload: payload,
|
|
58
|
-
responsePayload: { },
|
|
59
|
-
pid: process.pid.toString()
|
|
60
|
-
}
|
|
61
|
-
const messageRecord = {
|
|
62
|
-
messageId,
|
|
63
|
-
requestPayload,
|
|
64
|
-
responses: { }, // record
|
|
65
|
-
startTime: performance.now(),
|
|
66
|
-
endTime: 0,
|
|
67
|
-
timeout: setTimeout(() => {
|
|
68
|
-
this.#LogDebugMessage(chalk.red(`Timeout has occurred after: [${this.#options.requestResponseMessageTimeout}]ms with message id: [${messageRecord.messageId}]. Details: [${JSON.stringify(this.#inflightMessages[messageRecord.messageId].requestPayload)}]`));
|
|
69
|
-
setTimeout(() => {
|
|
70
|
-
delete this.#inflightMessages[messageRecord.messageId];
|
|
71
|
-
}, 0).unref();
|
|
72
|
-
errorCallBack(requestPayload);
|
|
73
|
-
}, this.#options.requestResponseMessageTimeout).unref(),// max message timeout allowed
|
|
74
|
-
callBack,
|
|
75
|
-
errorCallBack
|
|
21
|
+
const ipcMessageManagerOptions: IPCMessageManagerOptions = {
|
|
22
|
+
logger: defaultLogger,
|
|
23
|
+
requestResponseMessageTimeout: options.requestResponseMessageTimeout,
|
|
24
|
+
namespace: options.namespace,
|
|
25
|
+
messageSender: (payload: IIPCMessageProcessorIPCPayload) => {
|
|
26
|
+
(process as any).send(payload);
|
|
27
|
+
}
|
|
76
28
|
}
|
|
77
|
-
this.#
|
|
78
|
-
this.#LogDebugMessage(chalk.cyan(`sending: [${JSON.stringify(requestPayload)}]`));
|
|
79
|
-
(process as any).send(requestPayload);
|
|
29
|
+
this.#ipcMessageManager = new IPCMessageManager(ipcMessageManagerOptions);
|
|
80
30
|
}
|
|
81
31
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
32
|
+
// Process a message recieved from the primary thread
|
|
33
|
+
#processMessage = async (msg: any) => {
|
|
34
|
+
if (msg.header) {
|
|
35
|
+
const checkName = `__STS__${this.#options.namespace}__`;
|
|
36
|
+
if ((msg.header as string).includes(checkName)) {
|
|
37
|
+
const message = (msg as IIPCMessageProcessorIPCPayload);
|
|
38
|
+
if (msg.messageType.localeCompare('REQUEST') === 0) {
|
|
39
|
+
message.responsePayload = await this.#options.processCommand(message);
|
|
40
|
+
message.messageType = 'RESPONSE';
|
|
41
|
+
//this.#LogDebugMessage(chalk.magenta(`sending: [${JSON.stringify(message)}]`))
|
|
42
|
+
(process as any).send(message);
|
|
43
|
+
} else {
|
|
44
|
+
// Received a response (to my request)
|
|
45
|
+
this.#ipcMessageManager.ProcessMessage(msg);
|
|
46
|
+
}
|
|
94
47
|
}
|
|
95
48
|
}
|
|
96
49
|
}
|
|
50
|
+
|
|
51
|
+
SendMessage = (payload: JSONObject): Promise<JSONObject> => {
|
|
52
|
+
return this.#ipcMessageManager.SendMessage(payload);
|
|
53
|
+
}
|
|
97
54
|
|
|
98
55
|
Start = () => {
|
|
99
|
-
|
|
100
|
-
|
|
56
|
+
this.#ipcMessageManager.Start();
|
|
57
|
+
|
|
58
|
+
// Receive a message response back from the primary thread
|
|
59
|
+
//process.on('message', this.#ipcMessageManager.ProcessMessage);
|
|
101
60
|
process.on('message', this.#processMessage);
|
|
102
61
|
}
|
|
103
62
|
|
|
104
63
|
Stop = () => {
|
|
64
|
+
//process.off('message', this.#ipcMessageManager.ProcessMessage);
|
|
105
65
|
process.off('message', this.#processMessage);
|
|
106
|
-
|
|
107
|
-
for (const [, iPCMessageProcessorWorkerRecord] of Object.entries(this.#inflightMessages)) {
|
|
108
|
-
if (iPCMessageProcessorWorkerRecord.timeout) {
|
|
109
|
-
clearTimeout(iPCMessageProcessorWorkerRecord.timeout);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
this.#inflightMessages = { };
|
|
66
|
+
this.#ipcMessageManager.Stop();
|
|
113
67
|
}
|
|
114
68
|
}
|
package/src/testing/app.ts
CHANGED
|
@@ -5,93 +5,116 @@ import { WorkerProcess } from './appWorkerWSS'
|
|
|
5
5
|
|
|
6
6
|
import cluster from 'cluster';
|
|
7
7
|
|
|
8
|
-
import
|
|
8
|
+
import { IPCMessageProcessorWorker } from './../ipcMessageProcessorWorker'
|
|
9
|
+
import { Sleep, defaultLogger } from '@nsshunt/stsutils';
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
const pid = 523552
|
|
11
|
+
import { IPCMessageProcessorPrimary } from './../ipcMessageProcessorPrimary'
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
import { IIPCMessageProcessorIPCPayload } from './../commonTypes'
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
const LogErrorMessage = (message: any) => console.error(message)
|
|
17
|
-
/*
|
|
18
|
-
async function testError() {
|
|
19
|
-
throw new Error('some error')
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
async function testtheerror() {
|
|
23
|
-
try {
|
|
24
|
-
await testError();
|
|
25
|
-
} catch (error) {
|
|
26
|
-
this.#LogErrorMessage(`Error2: [${error}]`);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
15
|
+
import { Worker } from 'node:cluster'
|
|
29
16
|
|
|
30
|
-
|
|
31
|
-
try {
|
|
17
|
+
import chalk from 'chalk';
|
|
32
18
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
} catch (error) {
|
|
36
|
-
this.#LogErrorMessage(`Error2: [${error}]`);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
(async () => {
|
|
41
|
-
await Sleep(1000);
|
|
42
|
-
let z = await testtheerror2((error) => this.#LogInfoMessage(error));
|
|
43
|
-
this.#LogInfoMessage(`done.....`);
|
|
44
|
-
|
|
45
|
-
process.exit(0);
|
|
46
|
-
})();
|
|
47
|
-
*/
|
|
48
|
-
|
|
49
|
-
function getNetworkUsage() {
|
|
50
|
-
try {
|
|
51
|
-
// Read the contents of the /proc/[pid]/net/dev file
|
|
52
|
-
const content = fs.readFileSync(filePath, 'utf8');
|
|
53
|
-
|
|
54
|
-
// Process the content to extract relevant information
|
|
55
|
-
const lines = content.trim().split('\n');
|
|
56
|
-
const headers1 = lines[0].split('|').map(header => header.trim());
|
|
57
|
-
const headers2 = lines[1].split('|').map(header => header.trim());
|
|
58
|
-
const data = lines[2].split('|').map(value => value.trim());
|
|
59
|
-
|
|
60
|
-
LogInfoMessage(data);
|
|
61
|
-
|
|
62
|
-
// Find the index of the relevant network statistics (e.g., bytes received and transmitted)
|
|
63
|
-
//const rxIndex = headers.indexOf('Receive');
|
|
64
|
-
//const txIndex = headers.indexOf('Transmit');
|
|
65
|
-
|
|
66
|
-
// Display network usage information
|
|
67
|
-
/*
|
|
68
|
-
this.#LogInfoMessage(`Network Usage for Process ${pid}:`);
|
|
69
|
-
this.#LogInfoMessage(` Incoming: ${data[rxIndex]} bytes`);
|
|
70
|
-
this.#LogInfoMessage(` Outgoing: ${data[txIndex]} bytes`);
|
|
71
|
-
*/
|
|
72
|
-
} catch (error) {
|
|
73
|
-
LogErrorMessage(`Error reading file: [${error}]`);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
19
|
+
const sleepVal = 0;
|
|
20
|
+
const maxLoop = 20000;
|
|
76
21
|
|
|
77
22
|
if (cluster.isPrimary) {
|
|
78
23
|
new MasterProcessBase(ServiceConfigOptions(true, cluster.isPrimary)).SetupServer();
|
|
79
24
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
25
|
+
setTimeout(async () => {
|
|
26
|
+
for (const id in cluster.workers) {
|
|
27
|
+
const p1 = new IPCMessageProcessorPrimary({
|
|
28
|
+
logger: defaultLogger,
|
|
29
|
+
namespace: 'test1',
|
|
30
|
+
processCommand: async (payload: IIPCMessageProcessorIPCPayload) => {
|
|
31
|
+
return {
|
|
32
|
+
msg: `From PRIMARY: [${process.pid}]`,
|
|
33
|
+
yousent: payload.requestPayload,
|
|
34
|
+
hello1: `world1`,
|
|
35
|
+
pid: process.pid
|
|
36
|
+
};
|
|
37
|
+
},
|
|
38
|
+
worker: cluster.workers[id] as Worker
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
const p2 = new IPCMessageProcessorPrimary({
|
|
42
|
+
logger: defaultLogger,
|
|
43
|
+
namespace: 'test2',
|
|
44
|
+
processCommand: async (payload: IIPCMessageProcessorIPCPayload) => {
|
|
45
|
+
return {
|
|
46
|
+
msg: `From PRIMARY: [${process.pid}]`,
|
|
47
|
+
yousent: payload.requestPayload,
|
|
48
|
+
hello2: `world2`,
|
|
49
|
+
pid: process.pid
|
|
50
|
+
};
|
|
51
|
+
},
|
|
52
|
+
worker: cluster.workers[id] as Worker
|
|
53
|
+
})
|
|
54
|
+
|
|
55
|
+
p1.Start(cluster.workers[id] as Worker);
|
|
56
|
+
p2.Start(cluster.workers[id] as Worker);
|
|
57
|
+
|
|
58
|
+
setTimeout(async () => {
|
|
59
|
+
for (let i=0; i < maxLoop; i++) {
|
|
60
|
+
const retVal1 = await p1.SendMessage({
|
|
61
|
+
from1: 'text from 1',
|
|
62
|
+
loop: i
|
|
63
|
+
});
|
|
64
|
+
const retVal2 = await p2.SendMessage({
|
|
65
|
+
from1: 'text from 2',
|
|
66
|
+
loop: i
|
|
67
|
+
});
|
|
68
|
+
console.log(`[${process.pid}] [${JSON.stringify(retVal1)}]`)
|
|
69
|
+
console.log(`[${process.pid}] [${JSON.stringify(retVal2)}]`)
|
|
70
|
+
|
|
71
|
+
await Sleep(sleepVal);
|
|
72
|
+
}
|
|
73
|
+
}, 1000);
|
|
74
|
+
}
|
|
75
|
+
}, 1000);
|
|
94
76
|
|
|
95
77
|
} else {
|
|
96
78
|
new WorkerProcess(ServiceConfigOptions(true, cluster.isPrimary)).SetupServer();
|
|
79
|
+
|
|
80
|
+
const w1 = new IPCMessageProcessorWorker({
|
|
81
|
+
logger: defaultLogger,
|
|
82
|
+
namespace: 'test1',
|
|
83
|
+
requestResponseMessageTimeout: 2000,
|
|
84
|
+
processCommand: async (payload) => {
|
|
85
|
+
return {
|
|
86
|
+
msg: `From WORKER: [${process.pid}]`,
|
|
87
|
+
yousent1: payload.requestPayload,
|
|
88
|
+
pid: process.pid
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
})
|
|
92
|
+
|
|
93
|
+
const w2 = new IPCMessageProcessorWorker({
|
|
94
|
+
logger: defaultLogger,
|
|
95
|
+
namespace: 'test2',
|
|
96
|
+
requestResponseMessageTimeout: 2000,
|
|
97
|
+
processCommand: async (payload) => {
|
|
98
|
+
return {
|
|
99
|
+
msg: `From WORKER: [${process.pid}]`,
|
|
100
|
+
yousent2: payload.requestPayload,
|
|
101
|
+
pid: process.pid
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
|
|
106
|
+
w1.Start();
|
|
107
|
+
w2.Start();
|
|
108
|
+
|
|
109
|
+
setTimeout(async () => {
|
|
110
|
+
for (let i=0; i < maxLoop; i++) {
|
|
111
|
+
const retVal1 = await w1.SendMessage({hello:`from worker 1: ${i}`});
|
|
112
|
+
console.log(chalk.blue(` ==> [${process.pid}] [${JSON.stringify(retVal1)}]`));
|
|
113
|
+
|
|
114
|
+
const retVal2 = await w2.SendMessage({hello:`from worker 2: ${i}`});
|
|
115
|
+
console.log(chalk.blue(` ==> [${process.pid}] [${JSON.stringify(retVal2)}]`));
|
|
116
|
+
|
|
117
|
+
await Sleep(sleepVal);
|
|
118
|
+
}
|
|
119
|
+
}, 1000);
|
|
97
120
|
}
|
package/src/testing/appConfig.ts
CHANGED
|
@@ -35,7 +35,7 @@ export function ServiceConfigOptions(clusterMode: boolean, isMaster: boolean): P
|
|
|
35
35
|
);
|
|
36
36
|
|
|
37
37
|
const logger = winston.createLogger({
|
|
38
|
-
level: '
|
|
38
|
+
level: 'debug',
|
|
39
39
|
format: winston.format.combine(
|
|
40
40
|
winston.format.colorize(),
|
|
41
41
|
winston.format.simple()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authutilsnode.d.ts","sourceRoot":"","sources":["../src/authutilsnode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAWjC,OAAO,EAAmB,UAAU,EAAc,MAAM,mBAAmB,CAAA;AAQ3E,OAAO,EAAS,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAE9E,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,2CAA2C;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,2BAA2B,CAAA;CACrD;AAED,qBAAa,aAAa;;gBAQV,MAAM,EAAE,UAAU;IA0B9B,8BAA8B,YAAa,qBAAqB,WAEzC,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAkB9C;IAmBK,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IAyB3D,eAAe,YAAmB,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAgB/F;IAEF,iBAAiB,aAAoB,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAGnE;IAEF,WAAW,UAAiB,MAAM,YAAY,MAAM,aAAa,MAAM,KAAG,QAAQ,MAAM,CAAC,CAgCxF;IAGD,aAAa,QAAS,MAAM,mBAG3B;IAED,mCAAmC,YAAmB,2CAA2C,
|
|
1
|
+
{"version":3,"file":"authutilsnode.d.ts","sourceRoot":"","sources":["../src/authutilsnode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAWjC,OAAO,EAAmB,UAAU,EAAc,MAAM,mBAAmB,CAAA;AAQ3E,OAAO,EAAS,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAE9E,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,2CAA2C;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,2BAA2B,CAAA;CACrD;AAED,qBAAa,aAAa;;gBAQV,MAAM,EAAE,UAAU;IA0B9B,8BAA8B,YAAa,qBAAqB,WAEzC,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAkB9C;IAmBK,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IAyB3D,eAAe,YAAmB,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAgB/F;IAEF,iBAAiB,aAAoB,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAGnE;IAEF,WAAW,UAAiB,MAAM,YAAY,MAAM,aAAa,MAAM,KAAG,QAAQ,MAAM,CAAC,CAgCxF;IAGD,aAAa,QAAS,MAAM,mBAG3B;IAED,mCAAmC,YAAmB,2CAA2C,WAAW,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAAG,QAAQ,MAAM,CAAC,CAuGnJ;CACJ"}
|
package/types/commonTypes.d.ts
CHANGED
|
@@ -174,6 +174,7 @@ export interface IIPCMessageProcessorIPCPayload {
|
|
|
174
174
|
requestPayload: JSONObject;
|
|
175
175
|
responsePayload: JSONObject;
|
|
176
176
|
pid: string;
|
|
177
|
+
messageType: 'REQUEST' | 'RESPONSE';
|
|
177
178
|
}
|
|
178
179
|
export interface IIPCMessageProcessorWorkerRecord {
|
|
179
180
|
messageId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../src/commonTypes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../src/commonTypes.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAkC,MAAM,mBAAmB,CAAA;AAC1G,OAAO,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,YAAY,EAAE,uBAAuB,EAAE,KAAK,EACrG,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAA;AACrG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAE5C,MAAM,WAAW,sBAAuB,SAAQ,YAAY;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IAGjB,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAC9G,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,sBAAsB,CA0BxF;AAED,oBAAY,iBAAiB;IACzB,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CAC1B;AAED,MAAM,WAAW,iBAAiB;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACR,OAAO,EAAE,iBAAiB,CAAC;IAC9B,aAAa,CAAC,EAAE,UAAU,CAAC;IACxB,cAAc,CAAC,EAAE,UAAU,CAAA;CAC9B;AAED,MAAM,WAAW,UAAU;IAC1B,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,EAAE,EAAE,MAAM,IAAI,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,OAAO,CAAA;CACvB;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;AAIpD,MAAM,WAAW,YAAa,SAAQ,cAAc;IAChD,oBAAoB,IAAI,IAAI,CAAA;IAC5B,wBAAwB,IAAI,qBAAqB,CAAA;IACjD,0BAA0B,IAAI,IAAI,CAAA;IAClC,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B,gBAAgB,EAAE,CAAC,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,uBAAuB,KAAK,IAAI,CAAA;IACrF,IAAI,oBAAoB,IAAI,2BAA2B,GAAG,IAAI,CAAA;IAE9D,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAA;IACnC,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAA;IAClC,4BAA4B,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAA;IAChD,gBAAgB,CAAC,cAAc,EAAE,KAAK,GAAG,OAAO,CAAA;IAChD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAEjC,eAAe,IAAI,GAAG,CAAA;IACtB,IAAI,oBAAoB,IAAI,qBAAqB,CAAC,8BAA8B,EAAE,8BAA8B,CAAC,GAAG,IAAI,CAAA;IACxH,IAAI,oBAAoB,CAAC,KAAK,EAAE,qBAAqB,CAAC,8BAA8B,EAAE,8BAA8B,CAAC,GAAG,IAAI,EAAC;IAC7H,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,WAAW,IAAI,aAAa,GAAG,IAAI,CAAA;IACvC,IAAI,YAAY,IAAI,OAAO,CAAA;CAC9B;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IAEpD,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,CAAA;IACpD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAElC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,OAAO,CAAA;IACtH,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAChE,UAAU,EAAE,MAAM,IAAI,CAAA;IACtB,UAAU,EAAE,MAAM,IAAI,CAAA;IAEtB,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,MAAM,CAAA;IACnC,aAAa,IAAI,IAAI,CAAA;IAErB,sBAAsB,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;IACzD,iBAAiB,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;CACtF;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IAEpD,IAAI,UAAU,IAAI,GAAG,CAAA;IACrB,0BAA0B,IAAI,IAAI,CAAA;IAClC,cAAc,IAAI,IAAI,CAAA;IACtB,IAAI,EAAE,IAAI,GAAG,CAAA;IACb,IAAI,aAAa,IAAI,GAAG,CAAA;IACxB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/B,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,kBAAmB,SAAQ,YAAY;IACpD,IAAI,UAAU,IAAI,GAAG,CAAA;IACrB,aAAa,IAAI,IAAI,CAAA;IAErB,yBAAyB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAA;IACzC,0BAA0B,IAAI,IAAI,CAAA;IAClC,IAAI,EAAE,IAAI,GAAG,CAAA;IAEb,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAE5C,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IACrE,IAAI,aAAa,IAAI,GAAG,CAAA;IACxB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAClC,uBAAuB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAA;CACrD;AAID,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;AAE5D,MAAM,WAAW,iBAAiB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,aAAa,CAAA;CAC5B;AAED,oBAAY,YAAY;IACvB,UAAU,oCAAoC;IAC9C,UAAU,oCAAoC;CAC9C;AAED,oBAAY,OAAO;IAElB,qBAAqB,0BAA0B,CAAE,gDAAgD;IACjG,iCAAiC,sCAAsC,CAAE,4DAA4D;IAGrI,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;CACvC;AAED,oBAAY,QAAQ;IAEnB,iBAAiB,sBAAsB;IACvC,oBAAoB,yBAAyB,CAAE,uGAAuG;IACtJ,sBAAsB,2BAA2B;IAEjD,6BAA6B,kCAAkC;IAC/D,4BAA4B,iCAAiC;IAG7D,QAAQ,aAAa,CAAE,4CAA4C;IACnE,OAAO,YAAY,CAAE,oBAAoB;IACzC,QAAQ,aAAa,CAAE,qBAAqB;IAC5C,SAAS,cAAc,CAAE,sBAAsB;IAC/C,YAAY,iBAAiB,CAAE,oDAAoD;IAGnF,qBAAqB,0BAA0B,CAAE,iDAAiD;IAClG,sBAAsB,2BAA2B,CAAE,6CAA6C;IAGhG,aAAa,eAAe;IAG5B,OAAO,YAAY;CACnB;AAID,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,iBAAiB,EAAE,SAAS,CAAC,8BAA8B,EAAE,8BAA8B,EAAE,iBAAiB,CAAC,CAAA;CAC/G;AAED,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;AAEzE,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,8BAA8B,EAAE,8BAA8B,EAAE,iBAAiB,CAAC,CAAA;AACvH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,8BAA8B,EAAE,8BAA8B,EAAE,iBAAiB,CAAC,CAAA;AAEvH,MAAM,WAAW,qBAAqB,CAAC,oBAAoB,SAAS,8BAA8B,EAAE,oBAAoB,SAAS,8BAA8B;IAE3J,UAAU,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACtE,SAAS,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IAC5F,QAAQ,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3F,cAAc,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,OAAO,EAEzF,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,EACvH,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,KAAK,IAAI,CAAC,GAAG,IAAI,KACjH,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAA;IACjF,uBAAuB,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,oBAAoB,CAAA;IACjE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;IACrD,iBAAiB,EAAE,MAAM,IAAI,CAAA;IAC7B,UAAU,CAAC,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,aAAa,GAAG,qBAAqB,CAAC,oBAAoB,EAAE,oBAAoB,CAAC,CAAA;CACrI;AAED,MAAM,WAAW,uBAAuB;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE;QACJ,kBAAkB,EAAE,OAAO,CAAA;QAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,wBAAwB,CAAC,EAAE,MAAM,CAAA;QACjC,uBAAuB,CAAC,EAAE,MAAM,CAAA;QAChC,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,2BAA2B,CAAC,EAAE,OAAO,CAAA;KACxC,CAAA;IACD,MAAM,EAAE,UAAU,CAAA;CACrB;AAUD,MAAM,WAAW,cAAc;IAC3B,IAAI,QAAQ,IAAI,QAAQ,CAAA;IACxB,IAAI,EAAE,IAAI,MAAM,CAAA;IAChB,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrD,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACrG,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,sBAAsB,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACtL;AAED,MAAM,WAAW,8BAA8B;IAC3C,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,UAAU,CAAA;IAC1B,eAAe,EAAE,UAAU,CAAA;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,SAAS,GAAG,UAAU,CAAA;CACtC;AAED,MAAM,WAAW,gCAAgC;IAC7C,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,8BAA8B,CAAA;IAC9C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,8BAA8B,CAAC,CAAA;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;IAC9B,QAAQ,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,IAAI,CAAA;IAC3D,aAAa,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,IAAI,CAAA;CACnE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ISTSLogger, JSONObject } from '@nsshunt/stsutils';
|
|
2
|
+
import { IIPCMessageProcessorIPCPayload } from './commonTypes';
|
|
3
|
+
export interface IPCMessageManagerOptions {
|
|
4
|
+
logger: ISTSLogger;
|
|
5
|
+
requestResponseMessageTimeout: number;
|
|
6
|
+
namespace: string;
|
|
7
|
+
messageSender: (payload: IIPCMessageProcessorIPCPayload) => void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* todo
|
|
11
|
+
* @typedef {Object} options - todo
|
|
12
|
+
* @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
|
|
13
|
+
*/
|
|
14
|
+
export declare class IPCMessageManager {
|
|
15
|
+
#private;
|
|
16
|
+
constructor(options: IPCMessageManagerOptions);
|
|
17
|
+
ReceivedMessageFromMaster(msg: any): void;
|
|
18
|
+
SendMessage: (payload: JSONObject) => Promise<JSONObject>;
|
|
19
|
+
ProcessMessage: (msg: any) => void;
|
|
20
|
+
Start: () => void;
|
|
21
|
+
Stop: () => void;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=ipcMessageManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ipcMessageManager.d.ts","sourceRoot":"","sources":["../src/ipcMessageManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI1D,OAAO,EAAE,8BAA8B,EAAoC,MAAM,eAAe,CAAA;AAEhG,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,UAAU,CAAA;IAClB,6BAA6B,EAAE,MAAM,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,IAAI,CAAA;CACnE;AACD;;;;GAIG;AACH,qBAAa,iBAAiB;;gBAMd,OAAO,EAAE,wBAAwB;IAU7C,yBAAyB,CAAC,GAAG,EAAE,GAAG;IAIlC,WAAW,YAAa,UAAU,KAAG,QAAQ,UAAU,CAAC,CAUvD;IAoCD,cAAc,QAAS,GAAG,UAezB;IAED,KAAK,aAEJ;IAED,IAAI,aAQH;CACJ"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { ISTSLogger } from '@nsshunt/stsutils';
|
|
2
|
+
import { ISTSLogger, JSONObject } from '@nsshunt/stsutils';
|
|
3
3
|
import { Worker } from 'node:cluster';
|
|
4
4
|
import { IIPCMessageProcessorIPCPayload } from './commonTypes';
|
|
5
5
|
export interface IIPCMessageProcessorPrimary {
|
|
6
6
|
logger: ISTSLogger;
|
|
7
7
|
namespace: string;
|
|
8
|
-
processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<
|
|
8
|
+
processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>;
|
|
9
|
+
worker: Worker;
|
|
9
10
|
}
|
|
10
11
|
/**
|
|
11
12
|
* todo
|
|
@@ -15,6 +16,7 @@ export interface IIPCMessageProcessorPrimary {
|
|
|
15
16
|
export declare class IPCMessageProcessorPrimary {
|
|
16
17
|
#private;
|
|
17
18
|
constructor(options: IIPCMessageProcessorPrimary);
|
|
19
|
+
SendMessage: (payload: JSONObject) => Promise<JSONObject>;
|
|
18
20
|
Start: (worker: Worker) => void;
|
|
19
21
|
Stop: (worker: Worker) => void;
|
|
20
22
|
}
|