UNPKG

@bxjs/base

Version:

bxjs base framework & api

24 lines 3.05 kB
var cluster = require('cluster'); if (cluster.isMaster) { global['__init__'] = false; var numCPUs = require('os').cpus().length; for (var i = 0; i < numCPUs; i++) { // 创建子进程模拟线上请求的隔离方便global变量的使用保持与FC环境的一致性 var worker = cluster.fork(); worker.on('message', function (msg) { if (!global['__init__']) { console.log(msg); global['__init__'] = true; } }); } cluster.on('exit', function (worker, code, signal) { // console.log('Worker %d died with code/signal %s. Restarting worker...', worker.process.pid, signal || code); cluster.fork(); }); } else { // 子进程的初始化功能实现 require('./test-client'); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBRWxDLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRTtJQUNsQixNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFBO0lBQzFCLElBQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUE7SUFDM0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUM5Qix5Q0FBeUM7UUFDekMsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQzNCLE1BQU0sQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLFVBQVMsR0FBRztZQUM3QixJQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFDO2dCQUNuQixPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFBO2dCQUNoQixNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFBO2FBQzVCO1FBQ0wsQ0FBQyxDQUFDLENBQUE7S0FDTDtJQUNELE9BQU8sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLFVBQVUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNO1FBQzdDLCtHQUErRztRQUMvRyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDbEIsQ0FBQyxDQUFDLENBQUE7Q0FDTDtLQUFNO0lBQ0gsY0FBYztJQUNkLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQTtDQUMzQiIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IGNsdXN0ZXIgPSByZXF1aXJlKCdjbHVzdGVyJylcblxuaWYgKGNsdXN0ZXIuaXNNYXN0ZXIpIHtcbiAgICBnbG9iYWxbJ19faW5pdF9fJ10gPSBmYWxzZVxuICAgIGNvbnN0IG51bUNQVXMgPSByZXF1aXJlKCdvcycpLmNwdXMoKS5sZW5ndGhcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG51bUNQVXM7IGkrKykge1xuICAgICAgICAvLyDliJvlu7rlrZDov5vnqIvmqKHmi5/nur/kuIror7fmsYLnmoTpmpTnprvmlrnkvr9nbG9iYWzlj5jph4/nmoTkvb/nlKjkv53mjIHkuI5GQ+eOr+Wig+eahOS4gOiHtOaAp1xuICAgICAgICBsZXQgd29ya2VyID0gY2x1c3Rlci5mb3JrKClcbiAgICAgICAgd29ya2VyLm9uKCdtZXNzYWdlJywgZnVuY3Rpb24obXNnKSB7XG4gICAgICAgICAgICBpZighZ2xvYmFsWydfX2luaXRfXyddKXtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhtc2cpXG4gICAgICAgICAgICAgICAgZ2xvYmFsWydfX2luaXRfXyddID0gdHJ1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cbiAgICBjbHVzdGVyLm9uKCdleGl0JywgZnVuY3Rpb24gKHdvcmtlciwgY29kZSwgc2lnbmFsKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdXb3JrZXIgJWQgZGllZCB3aXRoIGNvZGUvc2lnbmFsICVzLiBSZXN0YXJ0aW5nIHdvcmtlci4uLicsIHdvcmtlci5wcm9jZXNzLnBpZCwgc2lnbmFsIHx8IGNvZGUpO1xuICAgICAgICBjbHVzdGVyLmZvcmsoKVxuICAgIH0pXG59IGVsc2Uge1xuICAgIC8vIOWtkOi/m+eoi+eahOWIneWni+WMluWKn+iDveWunueOsFxuICAgIHJlcXVpcmUoJy4vdGVzdC1jbGllbnQnKVxufVxuIl19