const merge = require('lodash/merge'); const Haz = require('hazelcast-client'); let globalClient = null; const clientBaseConfig = new Haz.Config.ClientConfig(); // И вот это - единственный корректный способ установки значений в объект // конфигурации, который затем отдается в коннект и корректно работает // добро пожаловать в мир ява-разработчиков от IBM ! // clientConfig.groupConfig.name = 'superadmin'; // clientConfig.groupConfig.password = 'dev-pass'; // clientConfig.networkConfig.addresses.push('127.0.0.1:5701'); // clientConfig.properties['hazelcast.client.invocation.timeout.millis'] = 2000; const cfg = { groupConfig: { name: 'superadmin', password: 'dev-pass', }, networkConfig: { addresses: ['127.0.0.1:5701'] }, // properties: { // 'hazelcast.client.heartbeat.interval': 1000, // 'hazelcast.client.heartbeat.timeout': 10000, // 'hazelcast.client.invocation.timeout.millis': 2222, // } }; const clientConfig = merge(clientBaseConfig, cfg); console.log(clientConfig); const startMem = process.memoryUsage(); const us = { rss: (startMem.rss / 1024 / 1024) | 0, hTotal: (startMem.heapTotal / 1024 / 1024) | 0, hUsed: (startMem.heapUsed / 1024 / 1024) | 0 } const max = { rss: 0, hTotal: 0, hUsed: 0 }; function memoryUsage() { const usage = process.memoryUsage(); const uc = { rss: (usage.rss / 1024 / 1024) | 0, hTotal: (usage.heapTotal / 1024 / 1024) | 0, hUsed: (usage.heapUsed / 1024 / 1024) | 0 } // save peak values if (uc.rss > max.rss) max.rss = uc.rss if (uc.hTotal > max.hTotal) max.hTotal = uc.hTotal if (uc.hUsed > max.hUsed) max.hUsed = uc.hUsed const time = +Date.now(); process.stdout.write(`\r${time} RSS/Heap Total/Heap Used - start ${us.rss}/${us.hTotal}/${us.hUsed} | current ${uc.rss}/${uc.hTotal}/${uc.hUsed} | max ${max.rss}/${max.hTotal}/${max.hUsed}`); } Haz.Client.newHazelcastClient(clientConfig).then((client) => { console.log('Success!'); globalClient = client; console.log(globalClient.getLocalEndpoint()); }) .catch((err) => { console.log(err) }); setInterval(async () => { try { // console.log('Client >>>>>>'); memoryUsage(); if (globalClient) { const map = await globalClient.getMap('qqz'); const prev = await map.put('q', Date.now()); // console.log('value: ', prev); } } catch (e) { // console.log('>>>>>>>>>>>>>>>>>', e) } }, 30);