Ubuntu / node.js отбрасывает входящие запросы

Ubuntu / node.js отбрасывает входящие запросы

Я получаю потерянные запросы на сервере node.js. Я упростил тестовый пример до такой степени, что это должно быть проблемой с настройкой системы. Я разработчик и у меня очень мало опыта в администрировании сервера, поэтому я, должно быть, упускаю что-то очевидное. Сервер находится на Digital Ocean со стандартной настройкой для MEAN на Ubuntu. Я не сильно изменил настройку сервера. Где мне искать?

Вот код сервера узла (это реальный код, который работает):

var http = require('http'),
    express = require('express'),
    path = require('path');

var app = express();

var rcount=0;

app.use(function(req, res, next) {
  console.log('--'+rcount+':'+req.protocol+'://' + req.headers.host + req.originalUrl);
  rcount++;
  next();
});

app.use('/js',express.static(path.join(__dirname, 'public/js'), {maxAge: 86400000})); 

http.createServer(app).listen(9876, function(){
  console.log('Express server listening on port 9876');
});

Вот что происходит в осаде (извините за длину, но это необходимо, чтобы увидеть картинку). Регистратор на стороне сервера показывает, что express НЕ получил запросы, которые истекли по тайм-ауту. В тестовой среде нет никаких прокси или чего-либо еще, узел работает напрямую на 9876, как показано.

MacBook-Air-alex:www alex$ siege -iv http://xxx.xxx.xxx.xxx:9876/js/animatescroll.js
** SIEGE 3.0.7
** Preparing 15 concurrent users for battle.
The server is now under siege...
HTTP/1.1 200   0.10 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.10 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.14 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.10 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.10 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.14 secs:    7686 bytes ==> GET  /js/animatescroll.js
[error] socket: 209698816 connection timed out.: Operation timed out
[error] socket: 212381696 connection timed out.: Operation timed out
[error] socket: 208089088 connection timed out.: Operation timed out
[error] socket: 207015936 connection timed out.: Operation timed out
[error] socket: 209162240 connection timed out.: Operation timed out
HTTP/1.1 200   0.14 secs:    7686 bytes ==> GET  /js/animatescroll.js
[error] socket: 208625664 connection timed out.: Operation timed out
[error] socket: 205942784 connection timed out.: Operation timed out
[error] socket: 206479360 connection timed out.: Operation timed out
[error] socket: 205406208 connection timed out.: Operation timed out
[error] socket: 211308544 connection timed out.: Operation timed out
[error] socket: 210771968 connection timed out.: Operation timed out
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.14 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.15 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.40 secs:    7686 bytes ==> GET  /js/animatescroll.js
[error] socket: 210235392 connection timed out.: Operation timed out
HTTP/1.1 200   0.19 secs:    7686 bytes ==> GET  /js/animatescroll.js
[error] socket: 204869632 connection timed out.: Operation timed out
HTTP/1.1 200   0.11 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.16 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.16 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.17 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.10 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.14 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js
[error] socket: 211845120 connection timed out.: Operation timed out
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.12 secs:    7686 bytes ==> GET  /js/animatescroll.js
HTTP/1.1 200   0.13 secs:    7686 bytes ==> GET  /js/animatescroll.js

решение1

Это была проблема датацентра. Диагностировано запуском копии сервера в другом датацентре.

Я даже не успел пожаловаться, все было исправлено к тому времени, как я понял. Мне это обошлось в 3 дня. Спасибо, Digital Ocean!

Связанный контент