{"id":1195,"date":"2020-11-11T10:41:07","date_gmt":"2020-11-11T02:41:07","guid":{"rendered":"http:\/\/123.57.164.21\/?p=1195"},"modified":"2021-01-30T14:51:46","modified_gmt":"2021-01-30T06:51:46","slug":"nodejs-%e5%88%a9%e7%94%a8-express-cluster%e5%ae%9e%e8%a1%8c%e5%a4%9a%e7%ba%bf%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/92it.top\/?p=1195","title":{"rendered":"Nodejs \u5229\u7528 express-cluster\u5b9e\u884c\u591a\u7ebf\u7a0b"},"content":{"rendered":"\n<ul><li>\u901a\u8fc7\u547d\u4ee4\u5b89\u88c5 npm install express-cluster <\/li><\/ul>\n\n\n\n<p>    express-cluster\u4ecb\u7ecd: https:\/\/www.npmjs.com\/package\/express-cluster<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/123.57.164.21\/wp-content\/uploads\/2020\/11\/image-1024x389.png\" alt=\"\" class=\"wp-image-1197\" width=\"573\" height=\"217\" srcset=\"https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-1024x389.png 1024w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-300x114.png 300w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-768x292.png 768w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-830x315.png 830w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-230x87.png 230w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-350x133.png 350w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image-480x182.png 480w, https:\/\/92it.top\/wp-content\/uploads\/2020\/11\/image.png 1470w\" sizes=\"(max-width: 573px) 100vw, 573px\" \/><\/figure><\/div>\n\n\n\n<ul><li>server.js\u4ee3\u7801<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">Object.defineProperty(exports, '__esModule', {\n  value: true,\n});\n\nconst express = require('express');\nvar cluster = require('express-cluster');\nconst numCPUs = require('os').cpus().length;\nglobal.workid\n\ncluster(function (worker) {\n  const app = express();\n  const bodyParser = require('body-parser');\n  app.use(bodyParser.json({ limit: '200mb' }));\n  const router = require('.\/router');\n  app.use('\/', router);\n  global.workid = worker.id\n  \n  const serverPort = process.env.PORT || 8000;\n  var server = app.listen(serverPort, () => {\n    console.log('Server Start processId =' + global.workid);\n  });\n  server.setTimeout(1200000)\n  return server\n}, {\n  count: numCPUs\n})<\/pre>\n\n\n\n<ul><li>\u5f53\u542f\u52a8\u591a\u7ebf\u7a0b\u4ee5\u540e\uff0cschedule\u5b9a\u5236\u4efb\u52a1\u4e5f\u4f1a\u542f\u52a8\u591a\u4e2a\u3002\u8fd9\u6837\u4f1a\u9020\u6210\u4e00\u4e9b\u9ebb\u70e6\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7worker.id\u6765\u63a7\u5236\u4e00\u4e0b\uff0c\u53ea\u6267\u884c\u4e00\u4e2a\u5b9a\u5236\u4efb\u52a1\u3002<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">const scheduleCronstyle = () => {\n  var rule = new schedule.RecurrenceRule();\n  rule.hour = [23];\n  rule.minute = [10, 30, 50];\n  schedule.scheduleJob(rule, () => {\n    \/\/ \u901a\u8fc7\u4fdd\u5b58\u5728global\u53d8\u91cf\u4e2d\u7684workid\u6765\u63a7\u5236\uff0c \u591a\u4e2a\u7ebf\u7a0b \u53ea\u6267\u884c\u4e00\u6b21schedule\uff08workid = 1\uff09\n    if(global.workid!= 1) {\n      return\n    }\n    xxxxxxxxxx\n    console.log('scheduleCronstyle processId = ' + global.workid);\n  });\n};\nscheduleCronstyle();<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u901a\u8fc7\u547d\u4ee4\u5b89\u88c5 npm install express-cluster express-cluster\u4ecb\u7ecd: h [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[],"_links":{"self":[{"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/posts\/1195"}],"collection":[{"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/92it.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1195"}],"version-history":[{"count":6,"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/posts\/1195\/revisions"}],"predecessor-version":[{"id":1202,"href":"https:\/\/92it.top\/index.php?rest_route=\/wp\/v2\/posts\/1195\/revisions\/1202"}],"wp:attachment":[{"href":"https:\/\/92it.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1195"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/92it.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1195"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/92it.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1195"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}