Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> node.js 100% cpu
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




при 5000 подключений по сокетам.
Server listening at address xxx.xxx.xxx.xx:3000
Change board to: evaviktoriya
Concurrent connections count: 72
Concurrent connections count: 101
Concurrent connections count: 140
Concurrent connections count: 173
Concurrent connections count: 209
Concurrent connections count: 232
Concurrent connections count: 259
Concurrent connections count: 291
Concurrent connections count: 308
Concurrent connections count: 335
Concurrent connections count: 358
Concurrent connections count: 370
Concurrent connections count: 391
Concurrent connections count: 404
Concurrent connections count: 412
Concurrent connections count: 429
Concurrent connections count: 452
Concurrent connections count: 465
Concurrent connections count: 477
Concurrent connections count: 502
Concurrent connections count: 509
Concurrent connections count: 506
Concurrent connections count: 520
Concurrent connections count: 506
.....
Concurrent connections count: 5015
node.js валит 1 ядро на 100%.
user posted image
скрипт безобидный. Запускается через forever
Делал по статейке настройки http://www.jayway.com/2015/04/13/600k-conc...-using-node-js/
как они держат на таком же сервере 600к подключений? Чего я незнаю?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Oyeme  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Reality is wrong. Dreams are for real
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1720
Пользователь №: 16955
На форуме: 8 лет, 3 месяца, 2 дня
Карма: 96




1.Попробуй использовать posix

npm install posix


// raise maximum number of open file descriptors to 10k,
// hard limit is left unchanged
posix.setrlimit('nofile', { soft: 10000 });

2.Проверь ulimit -n (/etc/security/limits.conf )
3.Использовать Cluster


--------------------
Programming: Private lessons via skype £45/h

Частные уроки в Лондоне / удаленно по skype.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




/etc/security/limits.conf
nginx        soft    nofile  131072
nginx hard nofile 132096

apache soft nofile 131072
apache hard nofile 132096

root soft nofile 1000000
root hard nofile 1000000


/etc/security/limits.d/90-nproc.conf
root       soft    nproc     unlimited

После правок /etc/security/limits.conf ребутить ничего не надо? изменения на лету вступают же?
Кластеризацию буду делать сейчас для ноды сейчас.
Сокеты держат отлично и пропускают и подключаются быстро очень к сокетам. и ничего не падает.
Напрягает что сама node.js жрёт много % CPU.
За вместо fs.watchFile стал использовать fs.watch нагрузка упала до 20-30% иногда прыгает до 80% может сборщик уже подгружает.
После кластеризации отпишусь.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Oyeme  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Reality is wrong. Dreams are for real
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1720
Пользователь №: 16955
На форуме: 8 лет, 3 месяца, 2 дня
Карма: 96




Цитата

За вместо fs.watchFile стал использовать fs.watch нагрузка упала до 20-30% иногда прыгает до 80% может сборщик уже подгружает.


Отлично, fs.watchFile уже устарел давно.


--------------------
Programming: Private lessons via skype £45/h

Частные уроки в Лондоне / удаленно по skype.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




Oyeme
Круто. Заметил что когда рубилово на доске начинаеться в секунду по 3-4 раза файл перезаписывается откуда нода берёт результат. то node.js начинает прыгать до 80% CPU
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22919
Пользователь №: 20039
На форуме: 7 лет, 5 месяцев, 19 дней
Карма: 607




VELIK505
Как минимум постарайся отказаться от работы с файлами в скрипте. Храни данные в памяти. Мне почему-то кажется, что как раз в этом и дело.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




Цитата (inpost @ 21.01.2016 - 15:41)
VELIK505
Как минимум постарайся отказаться от работы с файлами в скрипте. Храни данные в памяти. Мне почему-то кажется, что как раз в этом и дело.

inpost там файл то фигня по сути: {"idu":912144,"user":"orhon","refbek":"70","avatar":"http:\/\/static.mysite.com\/ava\/o\/orhon.png","rating_text":"\u0411\u0440\u0438\u0433\u0430\u0434\u0438\u0440","komment":""} вот и всё что нода достаёт из него=) Но попробую писать в мемкеш
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22919
Пользователь №: 20039
На форуме: 7 лет, 5 месяцев, 19 дней
Карма: 607




VELIK505
Не в размере файла дело, дело в том, что ты дёргаешь этот самый файл постоянно, а это большая нагрузка на файловую систему. Попробуй заменить и отпишись о результатах, мне самому интересно.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Ron  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1282
Пользователь №: 41686
На форуме: 1 год, 9 месяцев, 18 дней
Карма: 23




Цитата (inpost @ 21.01.2016 - 21:35)
это большая нагрузка на файловую систему.

А что такое нагрузка на ФС, можно услышать? =)



--------------------
5.11.2017
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




Цитата (Ron @ 21.01.2016 - 20:23)
Цитата (inpost @ 21.01.2016 - 21:35)
это большая нагрузка на файловую систему.

А что такое нагрузка на ФС, можно услышать? =)

ну поидее что я файл постоянно дёргаю нодой. Конечно имеет место быть так не делать. Но а с другой стороны так же тот же инклюд ты же тоже файл дёргаешь. Ну в идеале да снижать такие обращения. Ну в целом всё зависит ещё от винтов на ssd это как то легче переноситься чем на sata и sas. Впринципе для этого sdd и хорош.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




inpost
Ну что я скажу.
Положил в редис:
$redis = new Redis();
$redis->connect('localhost:6379');
$redis->set('board', $json_data);

нода в редис ломиться теперь.
Нагрузка упала в 5 раз!
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8925
Пользователь №: 26630
На форуме: 6 лет, 2 месяца, 24 дня
Карма: 603




VELIK505
а файл держать на tmpfs не пробовал?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VELIK505  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1515
Пользователь №: 25307
На форуме: 6 лет, 5 месяцев, 16 дней
Карма: 44




killer8080
файлик именно нет но до этого я пробывал у нас папка сессии mod-tmp забивалась я попробывал 3 варианта куда писать сессии:
1 в tmpsf
2 в redis
3 в memcached
при большом обьёмё сколько их есть у нас memcached показал себя как самый лучший результат + он многопоточный -t 8 и сделал чанки в нём для ускорения производительности. уже полгода как в мемкеше сессии никаких потерь никаких издержек и так работают по уникс сокету то получился побыстрее доступ к (юзерским данным) к удалённому mysql-серверу.
Щас к редису подделаю подключение по сокету UNIXSOCK=/tmp/redis.sock
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 5 лет
Карма: 56




Вообще, насколько я знаю, в node.js можно отслеживать изменение файла (т.е. слушателем событий! если файл поменялся - можно его рекешировать в ОЗУ). Т.е. снизить нагрузку потенциально
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22919
Пользователь №: 20039
На форуме: 7 лет, 5 месяцев, 19 дней
Карма: 607




VELIK505
Инклюд - тоже нагрузка.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Ответ в темуСоздание новой темыСоздание опроса