@nsshunt/stsappframework 3.1.230 → 3.1.232
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/dist/commonTypes.js +31 -0
- package/dist/commonTypes.js.map +1 -1
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/process/serverprocessbase.js +39 -23
- package/dist/process/serverprocessbase.js.map +1 -1
- package/dist/process/singleprocessbase.js.map +1 -1
- package/dist/vitesttesting/appConfig.js +3 -1
- package/dist/vitesttesting/appConfig.js.map +1 -1
- package/dist/vitesttesting/appSingleWSS.js +99 -48
- package/dist/vitesttesting/appSingleWSS.js.map +1 -1
- package/dist/vitesttesting/singleservertest.test.js +151 -59
- package/dist/vitesttesting/singleservertest.test.js.map +1 -1
- package/package.json +3 -3
- package/src/commonTypes.ts +3 -1
- package/src/index.ts +0 -3
- package/src/process/serverprocessbase.ts +46 -23
- package/src/process/singleprocessbase.ts +1 -2
- package/src/vitesttesting/appConfig.ts +3 -1
- package/src/vitesttesting/appSingleWSS.ts +120 -55
- package/src/vitesttesting/singleservertest.test.ts +185 -68
- package/src/vitesttesting/wsevents.ts +11 -0
- package/types/commonTypes.d.ts +1 -12
- package/types/commonTypes.d.ts.map +1 -1
- package/types/index.d.ts +0 -3
- package/types/index.d.ts.map +1 -1
- package/types/process/serverprocessbase.d.ts +1 -1
- package/types/process/serverprocessbase.d.ts.map +1 -1
- package/types/process/singleprocessbase.d.ts.map +1 -1
- package/types/vitesttesting/appConfig.d.ts.map +1 -1
- package/types/vitesttesting/appSingleWSS.d.ts +2 -3
- package/types/vitesttesting/appSingleWSS.d.ts.map +1 -1
- package/types/vitesttesting/wsevents.d.ts +11 -0
- package/types/vitesttesting/wsevents.d.ts.map +1 -1
- package/dist/kafka/kafkaconsumer.js +0 -128
- package/dist/kafka/kafkaconsumer.js.map +0 -1
- package/dist/kafka/kafkamanager.js +0 -173
- package/dist/kafka/kafkamanager.js.map +0 -1
- package/dist/kafka/kafkaproducer.js +0 -97
- package/dist/kafka/kafkaproducer.js.map +0 -1
- package/dist/kafkatesting/config.js +0 -10
- package/dist/kafkatesting/config.js.map +0 -1
- package/dist/kafkatesting/consume.js +0 -154
- package/dist/kafkatesting/consume.js.map +0 -1
- package/dist/kafkatesting/produce.js +0 -164
- package/dist/kafkatesting/produce.js.map +0 -1
- package/src/kafka/kafkaconsumer.ts +0 -136
- package/src/kafka/kafkamanager.ts +0 -210
- package/src/kafka/kafkaproducer.ts +0 -103
- package/src/kafkatesting/config.ts +0 -10
- package/src/kafkatesting/consume.ts +0 -185
- package/src/kafkatesting/produce.ts +0 -187
- package/types/kafka/kafkaconsumer.d.ts +0 -21
- package/types/kafka/kafkaconsumer.d.ts.map +0 -1
- package/types/kafka/kafkamanager.d.ts +0 -30
- package/types/kafka/kafkamanager.d.ts.map +0 -1
- package/types/kafka/kafkaproducer.d.ts +0 -24
- package/types/kafka/kafkaproducer.d.ts.map +0 -1
- package/types/kafkatesting/config.d.ts +0 -7
- package/types/kafkatesting/config.d.ts.map +0 -1
- package/types/kafkatesting/consume.d.ts +0 -2
- package/types/kafkatesting/consume.d.ts.map +0 -1
- package/types/kafkatesting/produce.d.ts +0 -2
- package/types/kafkatesting/produce.d.ts.map +0 -1
|
@@ -20,6 +20,7 @@ const testcontainers_1 = require("testcontainers");
|
|
|
20
20
|
let app = null;
|
|
21
21
|
let ioRedisMessageProcessorUrl = '';
|
|
22
22
|
let ioRedisContainer = null;
|
|
23
|
+
let network;
|
|
23
24
|
const agentManager = new stsconfig_1.AgentManager({});
|
|
24
25
|
const endpoint = 'https://localhost';
|
|
25
26
|
const socketUtilsoptions = {
|
|
@@ -76,29 +77,37 @@ const testcontainers_1 = require("testcontainers");
|
|
|
76
77
|
return null;
|
|
77
78
|
}
|
|
78
79
|
};
|
|
80
|
+
const StartNetwork = async () => {
|
|
81
|
+
network = await new testcontainers_1.Network().start();
|
|
82
|
+
};
|
|
83
|
+
const StopNetwork = async () => {
|
|
84
|
+
await network.stop();
|
|
85
|
+
};
|
|
79
86
|
const StartRedis = async () => {
|
|
80
87
|
ioRedisContainer = await new testcontainers_1.GenericContainer("redis/redis-stack-server")
|
|
81
88
|
.withEnvironment({
|
|
82
89
|
REDIS_ARGS: "--save \"\" --appendonly no",
|
|
83
90
|
})
|
|
84
91
|
.withExposedPorts(6379)
|
|
85
|
-
|
|
86
|
-
|
|
92
|
+
.withNetwork(network)
|
|
93
|
+
.withNetworkAliases("redisstackserver")
|
|
87
94
|
//.withWaitStrategy(Wait.forLogMessage(`Ready to accept connections tcp`))
|
|
88
95
|
.start();
|
|
89
96
|
ioRedisMessageProcessorUrl = `redis://${ioRedisContainer.getHost()}:${ioRedisContainer.getMappedPort(6379)}`;
|
|
90
97
|
await (0, stsutils_1.Sleep)(2000);
|
|
91
98
|
//expect(goptions.imRedisMessageProcessorUrl).toEqual('redis://localhost:6379');
|
|
92
99
|
// IM_REDIS_MESSAGE_PROCESSOR_URL
|
|
93
|
-
console.log(chalk_1.default.green(`redis/redis-stack-server Started.
|
|
100
|
+
console.log(chalk_1.default.green(`redis/redis-stack-server Started. docker [${ioRedisMessageProcessorUrl}]`));
|
|
94
101
|
};
|
|
95
102
|
const StopRedis = async () => {
|
|
96
103
|
await ioRedisContainer.stop();
|
|
97
104
|
await (0, stsutils_1.Sleep)(200);
|
|
98
105
|
};
|
|
99
106
|
(0, vitest_1.beforeAll)(async () => {
|
|
107
|
+
await StartNetwork();
|
|
100
108
|
await StartRedis();
|
|
101
109
|
process.env.IM_REDIS_MESSAGE_PROCESSOR_URL = ioRedisMessageProcessorUrl;
|
|
110
|
+
process.env.SOCKET_IO_REDIS_ADAPTOR_URL = ioRedisMessageProcessorUrl;
|
|
102
111
|
(0, stsconfig_1.$ResetOptions)();
|
|
103
112
|
const appOptions = (0, appConfig_1.ServiceConfigOptions)(false, true);
|
|
104
113
|
appOptions.processExitOnTerminate = false;
|
|
@@ -110,9 +119,11 @@ const testcontainers_1 = require("testcontainers");
|
|
|
110
119
|
agentManager.Terminate();
|
|
111
120
|
await (0, stsutils_1.Sleep)(500);
|
|
112
121
|
await app?.TerminateApplication();
|
|
113
|
-
await (0, stsutils_1.Sleep)(
|
|
122
|
+
await (0, stsutils_1.Sleep)(2000);
|
|
114
123
|
app = null;
|
|
115
124
|
await StopRedis();
|
|
125
|
+
await StopNetwork();
|
|
126
|
+
await (0, stsutils_1.Sleep)(2000);
|
|
116
127
|
}, 120000);
|
|
117
128
|
(0, vitest_1.test)('Testing Module', async () => {
|
|
118
129
|
vitest_1.expect.assertions(1);
|
|
@@ -129,66 +140,147 @@ const testcontainers_1 = require("testcontainers");
|
|
|
129
140
|
}
|
|
130
141
|
}, 10000);
|
|
131
142
|
(0, vitest_1.test)('client socket testing', async () => {
|
|
132
|
-
vitest_1.expect.assertions(
|
|
133
|
-
let
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
(0, vitest_1.expect)(
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
(
|
|
143
|
+
vitest_1.expect.assertions(29);
|
|
144
|
+
let connectCount = 0;
|
|
145
|
+
let subscribeAckCount = 0;
|
|
146
|
+
let unsubscribeAckCount = 0;
|
|
147
|
+
let subscribeKeepAliveAckCount = 0;
|
|
148
|
+
let doneAckCount = 0;
|
|
149
|
+
const SetupClient = async (clientName, joinRooms) => {
|
|
150
|
+
const socket = socketUtils.SetupClientSideSocket('STSUITerm',
|
|
151
|
+
// The address defines the namespace to connect to (i.e. io.of('/address'))
|
|
152
|
+
instrumentManagerAddress,
|
|
153
|
+
// Connected call back
|
|
154
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
155
|
+
(socket) => {
|
|
156
|
+
LogDebugMessage(chalk_1.default.green(`${clientName}: connected - 1`));
|
|
157
|
+
connectCount++;
|
|
158
|
+
(0, vitest_1.expect)(1).toEqual(1);
|
|
159
|
+
},
|
|
160
|
+
// Custom Events
|
|
161
|
+
(socket) => {
|
|
162
|
+
socket.on('subscribeAck', (data) => {
|
|
163
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: subscribeAck`));
|
|
164
|
+
subscribeAckCount++;
|
|
165
|
+
(0, vitest_1.expect)(data.data).toMatch(/(subject01|subject02)/i);
|
|
166
|
+
});
|
|
167
|
+
socket.on('unsubscribeAck', (data) => {
|
|
168
|
+
unsubscribeAckCount++;
|
|
169
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: unsubscribeAck`));
|
|
170
|
+
(0, vitest_1.expect)(data.data).toMatch(/(subject02)/i);
|
|
171
|
+
});
|
|
172
|
+
socket.on('subscribeKeepAliveAck', (data) => {
|
|
173
|
+
subscribeKeepAliveAckCount++;
|
|
174
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: subscribeKeepAliveAck`));
|
|
175
|
+
(0, vitest_1.expect)(data.data).toMatch(/(ok)/i);
|
|
176
|
+
});
|
|
177
|
+
socket.on('doneAck', async () => {
|
|
178
|
+
doneAckCount++;
|
|
179
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: doneAck`));
|
|
180
|
+
(0, vitest_1.expect)(1).toEqual(1);
|
|
181
|
+
});
|
|
182
|
+
socket.on('compute3', async (arg, cb) => {
|
|
183
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: compute3`));
|
|
184
|
+
cb({ arg, clientName });
|
|
185
|
+
});
|
|
186
|
+
socket.on('ServiceCommandGetThreads', async (arg) => {
|
|
187
|
+
LogDebugMessage(chalk_1.default.yellow(`${clientName}: ServiceCommandGetThreads: [${JSON.stringify(arg)}]`));
|
|
188
|
+
});
|
|
189
|
+
socket.on('ServiceCommandGetThreadsEx', async (arg, cb) => {
|
|
190
|
+
LogDebugMessage(chalk_1.default.green(`${clientName}: ServiceCommandGetThreadsEx: [${JSON.stringify(arg)}]`));
|
|
191
|
+
cb({ arg, clientName });
|
|
192
|
+
});
|
|
193
|
+
socket.on('GetThreadDetailsFromService', async (arg, cb) => {
|
|
194
|
+
LogDebugMessage(chalk_1.default.green(`${clientName}: ServiceCommandGetThreadsEx: [${JSON.stringify(arg)}]`));
|
|
195
|
+
cb({
|
|
196
|
+
threadData: { id: 'someid', extraData: 'someextradata' },
|
|
197
|
+
arg,
|
|
198
|
+
clientName
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
}, (error) => {
|
|
202
|
+
LogErrorMessage(`${clientName}: SetupClientSideSocket call back: [${error}]`);
|
|
152
203
|
});
|
|
153
|
-
socket.
|
|
154
|
-
|
|
155
|
-
|
|
204
|
+
socket.emit('__STSjoinRoom', joinRooms);
|
|
205
|
+
socket.emit('__STSjoinRoom', ['room1']).emit('__STSjoinRoom', ['room2']);
|
|
206
|
+
socket.emit('subscribe', { data: 'subject01 ' });
|
|
207
|
+
socket.emit('subscribe', { data: 'subject02 ' });
|
|
208
|
+
socket.emit('unsubscribe', { data: 'subject02 ' });
|
|
209
|
+
socket.emit('subscribeKeepAlive', { data: 'ok' });
|
|
210
|
+
socket.timeout(250).emit('compute', 10, (err, arg) => {
|
|
211
|
+
if (err) {
|
|
212
|
+
LogInfoMessage(err);
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
console.log(`${clientName}: compute: [${chalk_1.default.magenta(JSON.stringify(arg))}]`);
|
|
216
|
+
(0, vitest_1.expect)(arg).toEqual('20');
|
|
217
|
+
}
|
|
156
218
|
});
|
|
157
|
-
socket.
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
219
|
+
socket.timeout(250).emit('compute2', 10, (err, arg) => {
|
|
220
|
+
if (err) {
|
|
221
|
+
LogInfoMessage(err);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
console.log(`${clientName}: compute2: [${chalk_1.default.magenta(JSON.stringify(arg))}]`);
|
|
225
|
+
(0, vitest_1.expect)(arg.data).toEqual(20);
|
|
226
|
+
}
|
|
162
227
|
});
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
else {
|
|
178
|
-
(0, vitest_1.expect)(arg).toEqual('20');
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
socket.timeout(250).emit('compute2', 10, (err, arg) => {
|
|
182
|
-
if (err) {
|
|
183
|
-
LogInfoMessage(err);
|
|
184
|
-
}
|
|
185
|
-
else {
|
|
186
|
-
(0, vitest_1.expect)(arg.data).toEqual(20);
|
|
187
|
-
}
|
|
228
|
+
return socket;
|
|
229
|
+
};
|
|
230
|
+
const client1 = await SetupClient('client1', ['service']);
|
|
231
|
+
const client2 = await SetupClient('client2', ['service', 'service_instance1']);
|
|
232
|
+
const client3 = await SetupClient('client3', ['service', 'service_instance2']);
|
|
233
|
+
await (0, stsutils_1.Sleep)(1000);
|
|
234
|
+
//client1.emit('broadcast');
|
|
235
|
+
//client2.emit('__STSsendToRoom', ['service'], { command: 'ServiceCommandGetThreads', payload: { room: 'service', somedata: 1 }});
|
|
236
|
+
client2.emit('__STSsendToRoomWithCB', ['service_instance1'], { command: 'ServiceCommandGetThreadsEx', payload: { room: 'service_instance1', somedata: 1 } });
|
|
237
|
+
client3.emit('GetThreadDetails', {
|
|
238
|
+
room: 'service_instance1',
|
|
239
|
+
threadInput: 500
|
|
240
|
+
}, (data) => {
|
|
241
|
+
console.log(chalk_1.default.magenta(JSON.stringify(data)));
|
|
188
242
|
});
|
|
189
|
-
|
|
243
|
+
const start = performance.now();
|
|
244
|
+
const promArray = [];
|
|
245
|
+
for (let i = 0; i < 20; i++) {
|
|
246
|
+
const prom = new Promise((res, rej) => {
|
|
247
|
+
try {
|
|
248
|
+
client1.emit('GetThreadDetails', {
|
|
249
|
+
room: 'service',
|
|
250
|
+
threadInput: 500,
|
|
251
|
+
iteration: i
|
|
252
|
+
}, (data) => {
|
|
253
|
+
console.log(chalk_1.default.rgb(100, 240, 20)(JSON.stringify(data)));
|
|
254
|
+
res(data);
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
catch (error) {
|
|
258
|
+
rej(error);
|
|
259
|
+
}
|
|
260
|
+
});
|
|
261
|
+
promArray.push(prom);
|
|
262
|
+
}
|
|
263
|
+
await Promise.all(promArray);
|
|
264
|
+
const end = performance.now();
|
|
265
|
+
console.log(chalk_1.default.magenta(`Total Time: [${end - start}]`));
|
|
266
|
+
await (0, stsutils_1.Sleep)(1000);
|
|
267
|
+
client1.emit('__STSsendToRoom', ['room3'], { command: 'doneAck', payload: { somedata: 1 } });
|
|
268
|
+
//while (!complete) {
|
|
269
|
+
while (doneAckCount < 3) {
|
|
190
270
|
await (0, stsutils_1.Sleep)(100);
|
|
191
271
|
}
|
|
192
|
-
|
|
272
|
+
await (0, stsutils_1.Sleep)(500);
|
|
273
|
+
console.log(chalk_1.default.green(`connectCount: [${connectCount}]`));
|
|
274
|
+
console.log(chalk_1.default.green(`subscribeAckCount: [${subscribeAckCount}]`));
|
|
275
|
+
console.log(chalk_1.default.green(`unsubscribeAckCount: [${unsubscribeAckCount}]`));
|
|
276
|
+
console.log(chalk_1.default.green(`subscribeKeepAliveAckCount: [${subscribeKeepAliveAckCount}]`));
|
|
277
|
+
console.log(chalk_1.default.green(`doneAckCount: [${doneAckCount}]`));
|
|
278
|
+
(0, vitest_1.expect)(connectCount).toEqual(3);
|
|
279
|
+
(0, vitest_1.expect)(subscribeAckCount).toEqual(6);
|
|
280
|
+
(0, vitest_1.expect)(unsubscribeAckCount).toEqual(3);
|
|
281
|
+
(0, vitest_1.expect)(subscribeKeepAliveAckCount).toEqual(3);
|
|
282
|
+
(0, vitest_1.expect)(doneAckCount).toEqual(3);
|
|
283
|
+
console.log(chalk_1.default.green(`All Done...`));
|
|
284
|
+
}, 60000);
|
|
193
285
|
});
|
|
194
286
|
//# sourceMappingURL=singleservertest.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"singleservertest.test.js","sourceRoot":"","sources":["../../src/vitesttesting/singleservertest.test.ts"],"names":[],"mappings":";;;;;AAAA,kDAAkD,CAAE,UAAU;AAC9D,kDAA0B;AAE1B,kDAAyD;AAEzD,gDAAyC;AACzC,6DAA6D;AAE7D,iDAA6C;AAE7C,2CAAkD;AAElD,kDAA0F;AAE1F,mCAAqE;AAErE,gEAA8F;AAE9F,sCAAyC;AAKzC,mEAAmE;AACnE,mDAAkD;AAElD,IAAA,iBAAQ,EAAC,oBAAoB,EAAE,GAAG,EAAE;IAEhC,IAAI,GAAG,GAAwB,IAAI,CAAC;IACpC,IAAI,0BAA0B,GAAG,EAAE,CAAC;IACpC,IAAI,gBAAgB,GAAQ,IAAI,CAAC;IAEjC,MAAM,YAAY,GAAG,IAAI,wBAAY,CAAC,EAAE,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,mBAAmB,CAAA;IAEpC,MAAM,kBAAkB,GAAiC;QACrD,YAAY,EAAE;YACV,SAAS,EAAE,oBAAQ,CAAC,SAAS;YAC7B,UAAU,EAAE,oBAAQ,CAAC,UAAU;YAC/B,eAAe,EAAE,oBAAQ,CAAC,eAAe;YACzC,cAAc,EAAE,oBAAQ,CAAC,cAAc;YACvC,OAAO,EAAE,KAAK,EAAE,WAAW;YAC3B,kBAAkB,EAAE,oBAAQ,CAAC,YAAY,CAAC,qDAAqD;SAClG;KACJ,CAAA;IAED,MAAM,WAAW,GAAG,IAAI,uCAAoB,CAA6C,kBAAkB,CAAC,CAAC;IAE7G,MAAM,wBAAwB,GAC1B,GAAG,QAAQ,IAAI,oBAAQ,CAAC,UAAU,IAAI,oBAAY,CAAC,UAAU,GAAG,CAAC;IAErE,MAAM,cAAc,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC,CAAC;IACtF,MAAM,eAAe,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;IACxF,MAAM,eAAe,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;IAEvF,MAAM,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE;QAC/B,eAAe,CAAC,eAAK,CAAC,GAAG,CAAC,0BAA0B,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/D,IAAI,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAe,KAAK,CAAC;YACrC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACtB,eAAe,CAAC,eAAK,CAAC,GAAG,CAAC,kCAAkC,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC5F,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC9B,cAAc,CAAC,eAAK,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7F,CAAC;gBACD,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC3B,cAAc,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvF,CAAC;gBACD,IAAI,CAAC;oBACD,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;wBAC7B,cAAc,CAAC,eAAK,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3F,CAAC;gBACL,CAAC;gBAAC,OAAO,UAAe,EAAE,CAAC;oBACvB,cAAc,CAAC,eAAK,CAAC,GAAG,CAAC,4CAA4C,UAAU,GAAG,CAAC,CAAC,CAAC;gBACzF,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,eAAe,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,UAAU,GAAG,CAAC,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;IACL,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,KAAK,IAAmC,EAAE;QACzD,MAAM,GAAG,GAAG,GAAG,QAAQ,IAAI,oBAAQ,CAAC,UAAU,GAAG,oBAAQ,CAAC,aAAa,UAAU,CAAC;QAClF,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAA,eAAK,EAAC,IAAI,0BAAc,CAAC,GAAG,EAAE,KAAK,CAAC;iBACpD,kBAAkB,EAAE;iBACpB,gBAAgB,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,WAAW,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC1B,gBAAgB,GAAG,MAAM,IAAI,iCAAgB,CAAC,0BAA0B,CAAC;aACpE,eAAe,CAAC;YACb,UAAU,EAAE,6BAA6B;SAC5C,CAAC;aACD,gBAAgB,CAAC,IAAI,CAAC;YACvB,6BAA6B;YAC7B,yCAAyC;YACzC,0EAA0E;aACzE,KAAK,EAAE,CAAC;QAEb,0BAA0B,GAAG,WAAW,gBAAgB,CAAC,OAAO,EAAE,IAAI,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QAE7G,MAAM,IAAA,gBAAK,EAAC,IAAI,CAAC,CAAC;QAClB,gFAAgF;QAChF,iCAAiC;QAEjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kFAAkF,0BAA0B,GAAG,CAAC,CAAC,CAAC;IAC9I,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAA;IAED,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;QAEjB,MAAM,UAAU,EAAE,CAAC;QAEnB,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,0BAA0B,CAAC;QAExE,IAAA,yBAAa,GAAE,CAAC;QAEhB,MAAM,UAAU,GAAG,IAAA,gCAAoB,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrD,UAAU,CAAC,sBAAsB,GAAG,KAAK,CAAC;QAC1C,GAAG,GAAG,IAAI,2BAAY,CAAC,UAAU,CAAC,CAAA;QAClC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,IAAA,gBAAK,EAAC,IAAI,CAAC,CAAC;IACtB,CAAC,EAAE,MAAM,CAAC,CAAC;IAEX,IAAA,iBAAQ,EAAC,KAAK,IAAI,EAAE;QAChB,YAAY,CAAC,SAAS,EAAE,CAAC;QACzB,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,EAAE,oBAAoB,EAAE,CAAC;QAClC,MAAM,IAAA,gBAAK,EAAC,IAAI,CAAC,CAAC;QAClB,GAAG,GAAG,IAAI,CAAC;QAEX,MAAM,SAAS,EAAE,CAAC;IACtB,CAAC,EAAE,MAAM,CAAC,CAAC;IAEX,IAAA,aAAI,EAAC,gBAAgB,EAAE,KAAK,IAAI,EAAE;QAC9B,eAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACrB,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QAC5B,MAAM,GAAG,GAAG,EAAE,CAAC;QACf,eAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC;YACpC,IAAA,eAAM,EAAC,SAAS,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAChD,IAAA,eAAM,EAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;IACL,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,IAAA,aAAI,EAAC,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACrC,eAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAErB,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,MAAM,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC,WAAW;QACxD,2EAA2E;QAC3E,wBAAwB;QACxB,sBAAsB;QACtB,8DAA8D;QAC9D,CAAC,MAA0D,EAAE,EAAE;YAC3D,eAAe,CAAC,eAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9C,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,gBAAgB;QAChB,CAAC,MAA0D,EAAE,EAAE;YAC3D,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;gBACpC,eAAe,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC9C,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,IAAS,EAAE,EAAE;gBACtC,eAAe,CAAC,eAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBAChD,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC,IAAS,EAAE,EAAE;gBAC7C,eAAe,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBACvD,IAAA,eAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;gBAC5B,eAAe,CAAC,eAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;gBACzC,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBACrB,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC;YACpB,CAAC,CAAC,CAAC;QACP,CAAC,EACD,CAAC,KAAY,EAAE,EAAE;YACb,eAAe,CAAC,qCAAqC,KAAK,GAAG,CAAC,CAAC;QACnE,CAAC,CACJ,CAAA;QAED,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAEzE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC,CAAC;QAEhD,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC,CAAC;QAElD,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;QAEjD,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAC,CAAC,CAAA;QAC1F,sBAAsB;QAEtB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACjD,IAAI,GAAG,EAAE,CAAC;gBACN,cAAc,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAClD,IAAI,GAAG,EAAE,CAAC;gBACN,cAAc,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACJ,IAAA,eAAM,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAC;QACrB,CAAC;IAEL,CAAC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"singleservertest.test.js","sourceRoot":"","sources":["../../src/vitesttesting/singleservertest.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nsshunt/stsappframework",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.232",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -47,9 +47,10 @@
|
|
|
47
47
|
"dependencies": {
|
|
48
48
|
"@nsshunt/stsconfig": "^1.25.167",
|
|
49
49
|
"@nsshunt/stsdatamanagement": "^1.18.83",
|
|
50
|
-
"@nsshunt/stsobservability": "^1.0.
|
|
50
|
+
"@nsshunt/stsobservability": "^1.0.83",
|
|
51
51
|
"@nsshunt/stsutils": "^1.16.91",
|
|
52
52
|
"@socket.io/cluster-adapter": "^0.2.2",
|
|
53
|
+
"@socket.io/redis-adapter": "^8.3.0",
|
|
53
54
|
"@socket.io/redis-streams-adapter": "^0.2.2",
|
|
54
55
|
"@types/on-headers": "^1.0.3",
|
|
55
56
|
"@types/pidusage": "^2.0.5",
|
|
@@ -61,7 +62,6 @@
|
|
|
61
62
|
"express": "^4.19.1",
|
|
62
63
|
"http-status-codes": "^2.3.0",
|
|
63
64
|
"jayson": "^4.1.2",
|
|
64
|
-
"kafkajs": "^2.2.4",
|
|
65
65
|
"on-headers": "^1.0.2",
|
|
66
66
|
"pidusage": "^3.0.2",
|
|
67
67
|
"prom-client": "^15.1.3",
|
package/src/commonTypes.ts
CHANGED
|
@@ -6,7 +6,6 @@ import { JSONObject, ISTSLogger, ModelDelimeter, CheckValidChar } from "@nsshunt
|
|
|
6
6
|
import { PublishInstrumentController, InstrumentDefinitions, IContextBase, InstrumentBaseTelemetry, Gauge,
|
|
7
7
|
STSDefaultClientToServerEvents, STSDefaultServerToClientEvents } from '@nsshunt/stsobservability'
|
|
8
8
|
import { IDBAccessLayer } from '@nsshunt/stsdatamanagement'
|
|
9
|
-
import { Consumer, KafkaMessage } from 'kafkajs'
|
|
10
9
|
import { TinyEmitter } from "tiny-emitter";
|
|
11
10
|
|
|
12
11
|
import { Worker, Address } from 'node:cluster'
|
|
@@ -252,6 +251,7 @@ export interface ISocketIoServerHelper<ClientToServerEvents extends STSDefaultCl
|
|
|
252
251
|
GetSTSSocketIONamespaces: () => STSSocketIONamespaces
|
|
253
252
|
DisconnectSockets: () => void
|
|
254
253
|
SetupEvent(event: ClientToServerEvents, eventCb: ServerEventCb): ISocketIoServerHelper<ClientToServerEvents, ServerToClientEvents>
|
|
254
|
+
CloseAdaptors: () => Promise<void>
|
|
255
255
|
}
|
|
256
256
|
|
|
257
257
|
/*
|
|
@@ -272,6 +272,7 @@ export interface IInfluxDBManagerOptions {
|
|
|
272
272
|
}
|
|
273
273
|
*/
|
|
274
274
|
|
|
275
|
+
/*
|
|
275
276
|
export type ConsumeMessageCB = (topic: string, partition: number, message: KafkaMessage, heartbeat: () => Promise<void>, pause: () => () => void) => void;
|
|
276
277
|
export type ConsumeMessageErrorCB = (error: any) => void;
|
|
277
278
|
|
|
@@ -284,6 +285,7 @@ export interface IKafkaConsumer {
|
|
|
284
285
|
Stop: (errorCb: (error: any) => void) => Promise<void>
|
|
285
286
|
StartConsumingMessages: (autoCommit: boolean, cb: ConsumeMessageCB, errorCb: ConsumeMessageErrorCB) => Promise<void>
|
|
286
287
|
}
|
|
288
|
+
*/
|
|
287
289
|
|
|
288
290
|
export const iss = `https://stscore.stsmda.org/oauth2/v2.0`;
|
|
289
291
|
|
package/src/index.ts
CHANGED
|
@@ -8,9 +8,6 @@ export * from './controller/stscontrollerbase'
|
|
|
8
8
|
export * from './controller/stslatencycontroller'
|
|
9
9
|
export * from './route/stslatencyroute'
|
|
10
10
|
export * from './route/stsrouterbase'
|
|
11
|
-
export * from './kafka/kafkaconsumer'
|
|
12
|
-
export * from './kafka/kafkamanager'
|
|
13
|
-
export * from './kafka/kafkaproducer'
|
|
14
11
|
export * from './publishertransports/publishTransportUtils'
|
|
15
12
|
export * from './logger/stsTransportLoggerWinston'
|
|
16
13
|
export * from './logger/stsTransportWinston'
|
|
@@ -5,9 +5,6 @@ import { goptions } from '@nsshunt/stsconfig'
|
|
|
5
5
|
|
|
6
6
|
import fs from 'node:fs'
|
|
7
7
|
|
|
8
|
-
import { createAdapter as clusterCreateAdapter } from '@socket.io/cluster-adapter'
|
|
9
|
-
import { createAdapter } from "@socket.io/redis-streams-adapter";
|
|
10
|
-
|
|
11
8
|
import { JSONObject, Sleep } from '@nsshunt/stsutils'
|
|
12
9
|
|
|
13
10
|
import { ProcessOptions, IServerProcessBase } from './../commonTypes'
|
|
@@ -24,12 +21,21 @@ import { Server, ServerOptions } from "socket.io";
|
|
|
24
21
|
import { STSExpressServer } from './../stsexpressserver'
|
|
25
22
|
import { Express } from 'express'
|
|
26
23
|
|
|
24
|
+
import { createAdapter as clusterCreateAdapter } from '@socket.io/cluster-adapter'
|
|
25
|
+
import { createAdapter } from "@socket.io/redis-streams-adapter";
|
|
26
|
+
//import { ClusterAdapterWithHeartbeat } from 'socket.io-adaptor';
|
|
27
|
+
|
|
28
|
+
//import { createAdapter } from "@socket.io/redis-adapter";
|
|
29
|
+
|
|
27
30
|
import { createClient, RedisClientType } from 'redis';
|
|
31
|
+
import { Redis } from 'ioredis';
|
|
28
32
|
|
|
29
33
|
import jayson from 'jayson'
|
|
30
34
|
|
|
31
35
|
import { STSTransportLoggerWinston } from './../logger/stsTransportLoggerWinston'
|
|
32
36
|
|
|
37
|
+
import { STSNamespace } from './../commonTypes'
|
|
38
|
+
|
|
33
39
|
/**
|
|
34
40
|
* todo
|
|
35
41
|
* @typedef {Object} options - todo
|
|
@@ -39,7 +45,7 @@ export abstract class ServerProcessBase extends ProcessBase implements IServerPr
|
|
|
39
45
|
{
|
|
40
46
|
#masterProcessExitTime = goptions.masterProcessExitTime;
|
|
41
47
|
#io: Server | null = null;
|
|
42
|
-
#redisClient: RedisClientType | null = null;
|
|
48
|
+
#redisClient: RedisClientType | Redis | null = null;
|
|
43
49
|
#httpServer: any = null;
|
|
44
50
|
#expressServer: STSExpressServer | null = null;
|
|
45
51
|
#sockets: net.Socket[] = [ ];
|
|
@@ -163,25 +169,29 @@ export abstract class ServerProcessBase extends ProcessBase implements IServerPr
|
|
|
163
169
|
//this.#io = require("socket.io")(this.#httpServer, options);
|
|
164
170
|
this.#io = new Server(this.#httpServer, options);
|
|
165
171
|
|
|
166
|
-
if (this.options.
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
this.#redisClient = createClient({url: this.options.socketIoRedisAdaptorUrl});
|
|
172
|
-
} else {
|
|
173
|
-
this.LogInfoMessage(`Redis url: [localhost]`);
|
|
174
|
-
this.#redisClient = createClient();
|
|
175
|
-
}
|
|
176
|
-
await this.#redisClient.connect();
|
|
177
|
-
this.#io.adapter(createAdapter(this.#redisClient) as any);
|
|
178
|
-
this.LogInfoMessage(`Redis successfully connected.`);
|
|
172
|
+
if (this.options.useSocketIoRedisAdaptor) {
|
|
173
|
+
this.LogInfoMessage(`Using Redis for socket.io cluster management (worker)`);
|
|
174
|
+
if (this.options.socketIoRedisAdaptorUrl) {
|
|
175
|
+
this.LogInfoMessage(`Redis url: [${this.options.socketIoRedisAdaptorUrl}]`);
|
|
176
|
+
this.#redisClient = createClient({url: this.options.socketIoRedisAdaptorUrl});
|
|
179
177
|
} else {
|
|
178
|
+
this.LogInfoMessage(`Redis url: [localhost]`);
|
|
179
|
+
this.#redisClient = createClient();
|
|
180
|
+
}
|
|
181
|
+
await this.#redisClient.connect();
|
|
182
|
+
|
|
183
|
+
//this.#redisClient = new Redis(this.options.socketIoRedisAdaptorUrl as string);
|
|
184
|
+
|
|
185
|
+
this.#io.adapter(createAdapter(this.#redisClient));
|
|
186
|
+
|
|
187
|
+
this.LogInfoMessage(`Redis successfully connected.`);
|
|
188
|
+
} else {
|
|
189
|
+
if (this.options.clusterMode) {
|
|
180
190
|
this.#io.adapter(clusterCreateAdapter() as any);
|
|
181
191
|
this.LogInfoMessage(`Using nodejs cluster mode for socket.io cluster management`);
|
|
192
|
+
} else {
|
|
193
|
+
this.LogInfoMessage(`Not using any adaptors for socket.io cluster management.}`);
|
|
182
194
|
}
|
|
183
|
-
} else {
|
|
184
|
-
this.LogInfoMessage(`Not using any adaptors for socket.io cluster management.}`);
|
|
185
195
|
}
|
|
186
196
|
|
|
187
197
|
// To use a seperate socket server, the code below can be applied.
|
|
@@ -255,18 +265,31 @@ export abstract class ServerProcessBase extends ProcessBase implements IServerPr
|
|
|
255
265
|
return this.#shuttingDown;
|
|
256
266
|
}
|
|
257
267
|
|
|
258
|
-
TerminateSocketIO = () => {
|
|
268
|
+
TerminateSocketIO = async (): Promise<void> => {
|
|
259
269
|
if (this.options.wssServer === true && this.#io !== null) {
|
|
260
270
|
const logPrefix = `ServerProcessBase:TerminateSockets():${process.pid}:`;
|
|
261
271
|
this.LogInfoMessage(`${logPrefix} Disconnect SocketIO Sockets.`);
|
|
272
|
+
await Sleep(250);
|
|
273
|
+
await this.#io?.of('/').adapter.close();
|
|
262
274
|
if (this.socketIoServerHelper !== null) {
|
|
263
|
-
this.socketIoServerHelper.
|
|
275
|
+
await this.socketIoServerHelper.CloseAdaptors();
|
|
276
|
+
await Sleep(50);
|
|
277
|
+
if (this.#redisClient) {
|
|
278
|
+
this.#redisClient.disconnect();
|
|
279
|
+
await Sleep(50);
|
|
280
|
+
}
|
|
281
|
+
this.LogInfoMessage(`${logPrefix} this.socketIoServerHelper.DisconnectSockets()`);
|
|
282
|
+
await this.socketIoServerHelper.DisconnectSockets();
|
|
264
283
|
} else {
|
|
284
|
+
this.LogInfoMessage(`${logPrefix} this.#io.disconnectSockets()`);
|
|
285
|
+
if (this.#redisClient) {
|
|
286
|
+
this.#redisClient.disconnect();
|
|
287
|
+
await Sleep(50);
|
|
288
|
+
}
|
|
265
289
|
this.#io.disconnectSockets();
|
|
266
290
|
}
|
|
267
291
|
this.socketIoServerHelper = null;
|
|
268
292
|
this.#io = null;
|
|
269
|
-
// Note that this.#redisClient.disconnect() is not required becuase DisconnectSockets performs this action.
|
|
270
293
|
}
|
|
271
294
|
}
|
|
272
295
|
|
|
@@ -308,7 +331,7 @@ export abstract class ServerProcessBase extends ProcessBase implements IServerPr
|
|
|
308
331
|
|
|
309
332
|
this.TerminateUIController();
|
|
310
333
|
|
|
311
|
-
this.TerminateSocketIO();
|
|
334
|
+
await this.TerminateSocketIO();
|
|
312
335
|
|
|
313
336
|
await this.TerminateHTTPServer();
|
|
314
337
|
|
|
@@ -82,7 +82,9 @@ export function ServiceConfigOptions(clusterMode: boolean, isMaster: boolean): P
|
|
|
82
82
|
instrumentationObservationInterval: goptions.instrumentationObservationInterval,
|
|
83
83
|
instrumentationTimeWindow: goptions.instrumentationTimeWindow,
|
|
84
84
|
|
|
85
|
-
useSocketIoRedisAdaptor:
|
|
85
|
+
useSocketIoRedisAdaptor: true,
|
|
86
|
+
socketIoRedisAdaptorUrl: goptions.socketIoRedisAdaptorUrl,
|
|
87
|
+
//socketIoRedisAdaptorUrl: 'redis://192.168.50.5:6379',
|
|
86
88
|
//workerExec: './dist/testing/app.js',
|
|
87
89
|
|
|
88
90
|
logger: logger,
|