I have a Meteor app deployed with Passenger + Nginx (as follow) on AWS EC2 instance under Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-62-generic x86_64)
The problem is that it takes around 100% CPU usage permanently.
I've tried to switch to more powerful instance and even deployed a blank app instead of mine - still the same.
Any ideas where to dig? Thanks.
P.S.
var/log/nginx/error.log:
2017/02/08 08:04:20 [info] 18232#18232: Using 32768KiB of shared memory for nchan in /etc/nginx/nginx.conf:71 [ 2017-02-08 08:04:20.4123 18239/7fe378ac0780 age/Wat/WatchdogMain.cpp:1281 ]: Starting Passenger watchdog... [ 2017-02-08 08:04:20.4281 18242/7f7adea7b780 age/Cor/CoreMain.cpp:1070 ]: Starting Passenger core... [ 2017-02-08 08:04:20.4282 18242/7f7adea7b780 age/Cor/CoreMain.cpp:245 ]: Passenger core running in multi-application mode. [ 2017-02-08 08:04:20.4309 18242/7f7adea7b780 age/Cor/CoreMain.cpp:820 ]: Passenger core online, PID 18242 [ 2017-02-08 08:04:20.4511 18248/7fdc44af6780 age/Ust/UstRouterMain.cpp:529 ]: Starting Passenger UstRouter... [ 2017-02-08 08:04:20.4517 18248/7fdc44af6780 age/Ust/UstRouterMain.cpp:342 ]: Passenger UstRouter online, PID 18248 [ 2017-02-08 08:04:22.7236 18242/7f7ade98c700 age/Cor/SecurityUpdateChecker.h:464 ]: Security update check: no update found (next check in 24 hours)
npm install output:
> fibers@1.0.15 install /var/www/play/bundle/programs/server/node_modules/fibers > node build.js || nodejs build.js `linux-x64-48` exists; testing Binary is fine; exiting > meteor-dev-bundle@0.0.0 install /var/www/play/bundle/programs/server > node npm-rebuild.js { "meteor-dev-bundle": "0.0.0", "npm": "3.10.10", "ares": "1.10.1-DEV", "http_parser": "2.7.0", "icu": "56.1", "modules": "48", "node": "6.9.5", "openssl": "1.0.2k", "uv": "1.9.1", "v8": "5.1.281.89", "zlib": "1.2.8" } meteor-dev-bundle@0.0.0 /var/www/play/bundle/programs/server ├── amdefine@1.0.1 ├── asap@2.0.5 ├── fibers@1.0.15 ├── meteor-promise@0.8.0 ├─┬ node-gyp@3.4.0 │ ├─┬ fstream@1.0.10 │ │ └── inherits@2.0.3 │ ├─┬ glob@7.1.1 │ │ ├── fs.realpath@1.0.0 │ │ ├─┬ inflight@1.0.6 │ │ │ └── wrappy@1.0.2 │ │ ├── once@1.4.0 │ │ └── path-is-absolute@1.0.1 │ ├── graceful-fs@4.1.11 │ ├─┬ minimatch@3.0.3 │ │ └─┬ brace-expansion@1.1.6 │ │ ├── balanced-match@0.4.2 │ │ └── concat-map@0.0.1 │ ├─┬ mkdirp@0.5.1 │ │ └── minimist@0.0.8 │ ├─┬ nopt@3.0.6 │ │ └── abbrev@1.0.9 │ ├─┬ npmlog@3.1.2 │ │ ├─┬ are-we-there-yet@1.1.2 │ │ │ ├── delegates@1.0.0 │ │ │ └── readable-stream@2.2.2 │ │ ├── console-control-strings@1.1.0 │ │ ├─┬ gauge@2.6.0 │ │ │ ├── aproba@1.1.0 │ │ │ ├── has-color@0.1.7 │ │ │ ├── has-unicode@2.0.1 │ │ │ ├── object-assign@4.1.1 │ │ │ ├── signal-exit@3.0.2 │ │ │ ├─┬ string-width@1.0.2 │ │ │ │ ├── code-point-at@1.1.0 │ │ │ │ └─┬ is-fullwidth-code-point@1.0.0 │ │ │ │ └── number-is-nan@1.0.1 │ │ │ ├─┬ strip-ansi@3.0.1 │ │ │ │ └── ansi-regex@2.1.1 │ │ │ └── wide-align@1.1.0 │ │ └── set-blocking@2.0.0 │ ├─┬ osenv@0.1.4 │ │ ├── os-homedir@1.0.2 │ │ └── os-tmpdir@1.0.2 │ ├─┬ path-array@1.0.1 │ │ └─┬ array-index@1.0.0 │ │ ├─┬ debug@2.6.0 │ │ │ └── ms@0.7.2 │ │ └─┬ es6-symbol@3.1.0 │ │ ├── d@0.1.1 │ │ └─┬ es5-ext@0.10.12 │ │ └── es6-iterator@2.0.0 │ ├─┬ request@2.79.0 │ │ ├── aws-sign2@0.6.0 │ │ ├── aws4@1.6.0 │ │ ├── caseless@0.11.0 │ │ ├─┬ combined-stream@1.0.5 │ │ │ └── delayed-stream@1.0.0 │ │ ├── extend@3.0.0 │ │ ├── forever-agent@0.6.1 │ │ ├─┬ form-data@2.1.2 │ │ │ └── asynckit@0.4.0 │ │ ├─┬ har-validator@2.0.6 │ │ │ ├─┬ chalk@1.1.3 │ │ │ │ ├── ansi-styles@2.2.1 │ │ │ │ ├── escape-string-regexp@1.0.5 │ │ │ │ ├── has-ansi@2.0.0 │ │ │ │ └── supports-color@2.0.0 │ │ │ ├─┬ commander@2.9.0 │ │ │ │ └── graceful-readlink@1.0.1 │ │ │ ├─┬ is-my-json-valid@2.15.0 │ │ │ │ ├── generate-function@2.0.0 │ │ │ │ ├─┬ generate-object-property@1.2.0 │ │ │ │ │ └── is-property@1.0.2 │ │ │ │ ├── jsonpointer@4.0.1 │ │ │ │ └── xtend@4.0.1 │ │ │ └─┬ pinkie-promise@2.0.1 │ │ │ └── pinkie@2.0.4 │ │ ├─┬ hawk@3.1.3 │ │ │ ├── boom@2.10.1 │ │ │ ├── cryptiles@2.0.5 │ │ │ ├── hoek@2.16.3 │ │ │ └── sntp@1.0.9 │ │ ├─┬ http-signature@1.1.1 │ │ │ ├── assert-plus@0.2.0 │ │ │ ├─┬ jsprim@1.3.1 │ │ │ │ ├── extsprintf@1.0.2 │ │ │ │ ├── json-schema@0.2.3 │ │ │ │ └── verror@1.3.6 │ │ │ └─┬ sshpk@1.10.2 │ │ │ ├── asn1@0.2.3 │ │ │ ├── assert-plus@1.0.0 │ │ │ ├── bcrypt-pbkdf@1.0.1 │ │ │ ├─┬ dashdash@1.14.1 │ │ │ │ └── assert-plus@1.0.0 │ │ │ ├── ecc-jsbn@0.1.1 │ │ │ ├─┬ getpass@0.1.6 │ │ │ │ └── assert-plus@1.0.0 │ │ │ ├── jodid25519@1.0.2 │ │ │ ├── jsbn@0.1.0 │ │ │ └── tweetnacl@0.14.5 │ │ ├── is-typedarray@1.0.0 │ │ ├── isstream@0.1.2 │ │ ├── json-stringify-safe@5.0.1 │ │ ├─┬ mime-types@2.1.14 │ │ │ └── mime-db@1.26.0 │ │ ├── oauth-sign@0.8.2 │ │ ├── qs@6.3.0 │ │ ├── stringstream@0.0.5 │ │ ├─┬ tough-cookie@2.3.2 │ │ │ └── punycode@1.4.1 │ │ ├── tunnel-agent@0.4.3 │ │ └── uuid@3.0.1 │ ├── rimraf@2.5.4 │ ├─┬ tar@2.2.1 │ │ └── block-stream@0.0.9 │ └─┬ which@1.2.12 │ └── isexe@1.1.2 ├─┬ node-pre-gyp@0.6.29 │ ├─┬ rc@1.1.6 │ │ ├── deep-extend@0.4.1 │ │ ├── ini@1.3.4 │ │ ├── minimist@1.2.0 │ │ └── strip-json-comments@1.0.4 │ ├── semver@5.2.0 │ └─┬ tar-pack@3.1.4 │ ├─┬ debug@2.2.0 │ │ └── ms@0.7.1 │ ├── fstream-ignore@1.0.5 │ ├── once@1.3.3 │ ├─┬ readable-stream@2.1.5 │ │ ├── buffer-shims@1.0.0 │ │ ├── core-util-is@1.0.2 │ │ ├── isarray@1.0.0 │ │ ├── process-nextick-args@1.0.7 │ │ ├── string_decoder@0.10.31 │ │ └── util-deprecate@1.0.2 │ └── uid-number@0.0.6 ├── promise@7.1.1 ├── semver@4.1.0 ├── source-map@0.1.32 ├── source-map-support@0.3.2 └── underscore@1.5.2 npm WARN meteor-dev-bundle@0.0.0 No description npm WARN meteor-dev-bundle@0.0.0 No repository field. npm WARN meteor-dev-bundle@0.0.0 No license field.