NodeJS cluster fix: Only save disk cache to disk when master.

fixes #108
This commit is contained in:
softsimon 2020-09-22 04:07:47 +07:00
parent 347ab1e220
commit 6d67fbde84
No known key found for this signature in database
GPG Key ID: 488D7DCFB5A430D7
2 changed files with 11 additions and 9 deletions

View File

@ -1,4 +1,5 @@
import * as fs from 'fs'; import * as fs from 'fs';
import * as cluster from 'cluster';
import memPool from './mempool'; import memPool from './mempool';
import blocks from './blocks'; import blocks from './blocks';
@ -6,15 +7,17 @@ class DiskCache {
static FILE_NAME = './cache.json'; static FILE_NAME = './cache.json';
constructor() { constructor() {
process.on('SIGINT', () => { if (cluster.isMaster) {
this.saveCacheToDisk(); process.on('SIGINT', () => {
process.exit(2); this.saveCacheToDisk();
}); process.exit(2);
});
process.on('SIGTERM', () => { process.on('SIGTERM', () => {
this.saveCacheToDisk(); this.saveCacheToDisk();
process.exit(2); process.exit(2);
}); });
}
} }
saveCacheToDisk() { saveCacheToDisk() {

View File

@ -7,7 +7,6 @@ import * as http from 'http';
import * as https from 'https'; import * as https from 'https';
import * as WebSocket from 'ws'; import * as WebSocket from 'ws';
import * as cluster from 'cluster'; import * as cluster from 'cluster';
import * as os from 'os';
import { checkDbConnection } from './database'; import { checkDbConnection } from './database';
import routes from './routes'; import routes from './routes';