Digital Ocean Droplet достигает 100% загрузки ЦП без какого-либо трафика

Digital Ocean Droplet достигает 100% загрузки ЦП без какого-либо трафика

Недавно я установил новый Droplet (самый простой) и запустил приложение React с очень легким сервером Express с pm2 (сервер работал 16 часов с 0% загрузкой ЦП и 90 МБ ОЗУ).

Я запустил сервер, проблем не было, загрузка ЦП составляла около 3%, я тестировал веб-сайт, загружал видео и т. д. Я оставил его на ночь, и как только я загрузил статистику, она показала, что сервер использовал ЦП на 100% в течение последних 10 часов или около того, и я мог видеть скачок, произошедший в течение пары минут с 3% до полных 100%.

Обратите внимание, что на моем сайте нет трафика, как и на домене, поэтому использования не было. Фактически пропускная способность была на уровне 0 Мбит/с все время.

Я только что перезапустил сервер pm2, и похоже, что процессор снова падает. Почему дроплет без причины перескакивает на 100% использования процессора, когда он даже не используется?

решение1

Кажется, обновление узла решило проблему. Узел на моем дроплете отставал на 5v. Обновляю, сервер работает уже пару часов без проблем

Редактировать: После запуска в течение некоторого времени он все еще внезапно повышается. Похоже, что команда sshd вызывает проблему, и я не нашел способа ее исправить

Редактировать: Причина: Похоже, что проблема в функции node get. Удаление этого запроса и выполнение его напрямую из пользовательского интерфейса (без вызова URL-адреса бэкэнда) похоже исправляет проблему с процессором. Может быть утечка где-то в коде узла при передаче запроса обратно в пользовательский интерфейс

решение2

У меня была та же проблема, теперь я нашел решение, надеюсь, оно вам подойдет. На самом деле, кто-то атаковал мой сайт методом подбора паролей, так почему же мой сайт не работал, а график показывает загрузку ЦП на 100%?

Прежде всего, проверьте, какое приложение потребляет больше всего ресурсов, поэтому введите команду "вершина" он покажет загрузку ЦП в реальном времени. В моем случае PHP-fpm использовал 95% ресурсов.

Теперь вам нужно проверить файл журнала Nginx.sudo tail -f /var/log/nginx/access.log" он покажет ошибку или сведения о плохом доступе к шлюзу. Теперь вам нужно скопировать IP-адрес, который повторяется много раз, чтобы заблокировать его.

Вы можете заблокировать IP, используя эту команду "iptables -I ВВОД -s 35.186.156.199 -j ОТБРОС"

Надеюсь, эта проблема будет решена.

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