Sidius
|
|
« : 14 Февраля 2018, 16:27:39 » |
|
Разносим биллинг и НАС на разные сервера и подымаем еще один НАС (FreeBSD 10.4) перл (This is perl 5, version 24, subversion 3 (v5.24.3) built for amd64-freebsd-thread-multi) Запускаю /usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -d И вижу что в top-е оно отжирает 15-20% CPU. Запускаю /usr/bin/perl /usr/local/nodeny/nokernel.pl -m=cap -v Вижу вывод Start. Flag -h for help
loading /usr/local/nodeny/sat.cfg
Connecting to DBI:mysql:database=nodeny;host=a.b.c.d;port=3306;mysql_connect_timeout=5 : 0.023737 sec
SELECT * FROM config ORDER BY time DESC LIMIT 1 Строк: 1. Время выполнения sql: 0.0052 сек
loading kernel::cap.pm
Start
Слушаем порт 8080
и также отжирает 15-20% CPU Revision: 500 Подскажите куда копать и что где поправить,
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #1 : 14 Февраля 2018, 17:21:38 » |
|
заглушка - это перловый скрипт, который выполняет функции вебсервера. Если не ограничивать количество сессий с одного ip, то она загнется
|
|
|
Записан
|
|
|
|
Sidius
|
|
« Ответ #2 : 14 Февраля 2018, 18:59:27 » |
|
заглушка - это перловый скрипт, который выполняет функции вебсервера. Если не ограничивать количество сессий с одного ip, то она загнется
Я понимаю НО - на сервере еще нет ни одного клиента - просто голая запущенная заглушка как я написал в первом сообщении - на нее нет ни коннектов ничего - и оно отьедает 15-20% CPU
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #3 : 15 Февраля 2018, 09:23:01 » |
|
В файле nod/httpd.pm есть такая строка: my @ready = $httpd->{select}->can_read(0.00001); убери два нуля чтоб стало: my @ready = $httpd->{select}->can_read(0.001); если еще больше хочешь снизить нагрузку, то убери еще один ноль
|
|
|
Записан
|
|
|
|
Sidius
|
|
« Ответ #4 : 15 Февраля 2018, 11:01:06 » |
|
Спасибо! Нагрузка упала до 0.6%
|
|
|
Записан
|
|
|
|
Gosha
|
|
« Ответ #5 : 15 Февраля 2018, 11:05:38 » |
|
Поставил nginx на заглушку, загрузка минимальная. Конфиг на этом форуме кто то выкладывал под линукс, подправил. [root@nas1 /usr/local/etc/nginx/sites]# cat redirect.conf server { listen 8080; server_name localhost;
#charset koi8-r;
access_log /var/log/nginx-redirect.access.log;
location / { if ( $http_user_agent ~ ^uTorrent ) { return 404; } if ( $http_user_agent ~ Windows-Update-Agent ) { return 404; } if ( $http_user_agent ~ "Microsoft NCSI" ) { return 404; } if ( $http_user_agent ~ "ESS Update" ) { return 404; } if ( $http_user_agent ~ "Google Update" ) { return 404; } if ( $http_user_agent ~ "Microsoft-CryptoAPI" ) { return 404; } if ( $http_user_agent ~ "Microsoft BITS" ) { return 404; } if ( $http_user_agent ~ MSDW ) { return 404; } if ( $http_user_agent ~ ^SeaPort ) { return 404; } if ( $http_user_agent ~ ^Windows-Media-Player ) { return 404; } if ( $http_user_agent ~ "Google Update" ) { return 404; } if ( $http_user_agent ~ ^GoogleEarth ) { return 404; } if ( $http_user_agent ~ ^Skype ) { return 404; } if ( $http_user_agent = "MailRuSputnik" ) { return 404; } if ( $http_user_agent ~ ^Ya\.Online ) { return 404; } if ( $http_user_agent ~ ^MRA ) { return 404; } if ( $http_user_agent ~* ^MediaGet ) { return 404; } if ( $http_user_agent ~ ^BTWebClient ) { return 404; } # Avast updater if ( $http_user_agent ~ ^Syncer ) { return 404; } # Trend Micro updater if ( $http_user_agent = "TMUFE" ) { return 404; } if ( $http_user_agent ~ ^Akamai\ NetSession\ Interface ) { return 404; } if ( $http_user_agent ~ ^VKSaver ) { return 404; } if ( $http_user_agent ~ DrWebUpdate ) { return 404; } if ( $http_user_agent = "" ) { return 404; } if ( $host ~ geo\.kaspersky\.com ) { return 404; } if ( $host ~ (su|download|webrep).*\.avast\.com ) { return 404; }
if ( $host = wi2geo.mobile.yandex.net ) { return 404; } if ( $host ~ bar.*\.yandex\.ru ) { return 404; } if ( $host ~ (ping|master)\d*\.(dyngate|teamviewer)\.com ) { return 404; } if ( $host ~ sitecheck\d*\.opera\.com ) { return 404; } if ( $host ~ (xml\.my|mailsputnik|maps)\.mail\.ru ) { return 404; } if ( $host = onlineconfigservice.ubi.com ) { return 404; } if ( $host = com-services.pandonetworks.com ) { return 404; } if ( $host ~ ticno\.com ) { return 404; } if ( $host ~ conduit ) { return 404; } if ( $host ~ cbox\.ws ) { return 404; } if ( $host ~ (pricelist|metrics)\.skype\.com ) { return 404; } if ( $host = weather.service.msn.com ) { return 404; } if ( $host = advstat.letitbit.net ) { return 404; } if ( $host = skymonk.net ) { return 404; } if ( $host ~ counter ) { return 404; } if ( $host ~ pluraserver ) { return 404; } if ( $host ~ apps.bittorrent.com ) { return 404; } if ( $host ~ offers.bittorrent.com ) { return 404; } if ( $host ~ tracker ) { return 404; } if ( $request_uri ~* (update|feed|announce|rss|xml|json|oauth) ) { return 404; } if ( $request_uri ~* (toolbar|suggest) ) { return 404; } if ( $request_filename ~ \.(ico|gif|jpg|png) ) { return 404; } if ( $request_filename ~ \.(css|xml|js|swf|flv) ) { return 404; } if ( $request_filename ~ \.(crl|txt|cab|msi|jar) ) { return 404; } if ( $host ~ norton ) { return 404; }
proxy_set_header X-Real-IP $remote_addr; #WORK if delete caps tmpl cache rewrite ^ http://1.1.1.1/cgi-bin/cap.pl?url=http://$host$request_uri redirect;
} error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
}
Только ссилки подправить..
|
|
« Последнее редактирование: 15 Февраля 2018, 12:10:14 от Efendy »
|
Записан
|
|
|
|
Cell
NoDeny
Спец
Карма: 52
Offline
Сообщений: 1407
|
|
« Ответ #6 : 15 Февраля 2018, 11:08:54 » |
|
2Gosha Маст хэв. Спасибо. На заметку.
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #7 : 15 Февраля 2018, 11:20:38 » |
|
h_t_t_p - это форум http не пускает? подправить мне в твоем сообщении?
|
|
|
Записан
|
|
|
|
Gosha
|
|
« Ответ #8 : 15 Февраля 2018, 11:23:31 » |
|
Да.
|
|
|
Записан
|
|
|
|
Gosha
|
|
« Ответ #9 : 15 Февраля 2018, 11:26:55 » |
|
Тогда еще и nginx.conf [root@nas1 /usr/local/etc/nginx]# cat nginx.conf user www www;
worker_processes 8; # указать текущее количество ядер процессора worker_priority -20;
pid /var/run/nginx.pid;
error_log /var/log/nginx-error.log warn;
events { worker_connections 1024; accept_mutex on; multi_accept on; }
http { include mime.types; default_type application/octet-stream; reset_timedout_connection on; server_tokens off; log_format main '$remote_addr - [$time_local] ' '$host "$request" $status $bytes_sent ' '"$http_referer" "$http_user_agent" ' '"$gzip_ratio" $upstream_response_time'; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 0; client_max_body_size 512m; server_names_hash_max_size 1024; server_names_hash_bucket_size 128; port_in_redirect off; gzip on; gzip_vary on; gzip_min_length 1024; gzip_buffers 16 8k; gzip_comp_level 5; gzip_http_version 1.0; gzip_proxied any; gzip_disable "msie6"; gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript text/json; fastcgi_temp_path /var/nginx/fastcgi; proxy_temp_path /var/nginx/proxy_temp; charset utf-8; index index.php index.html index.htm; access_log off; error_log /dev/null; set_real_ip_from 194.ХХ.ХХХ.6; real_ip_header X-Real-IP; include /usr/local/etc/nginx/sites/*.conf; }
|
|
|
Записан
|
|
|
|
enigmaticua
|
|
« Ответ #10 : 11 Июня 2018, 13:22:41 » |
|
Товарищи, подскажите, появился общий DNS 1.1.1.1 и теперь перенаправление на заглушку не работает.
Подскажите, как решить проблему?
|
|
|
Записан
|
|
|
|
Pa4ka
|
|
« Ответ #11 : 11 Июня 2018, 13:31:16 » |
|
Товарищи, подскажите, появился общий DNS 1.1.1.1 и теперь перенаправление на заглушку не работает.
Подскажите, как решить проблему?
Не давайте его клиентам и замените его на вашем сервере. Если заменили уже то нужно знать как вы на заглушку редиректите и на чем
|
|
|
Записан
|
|
|
|
WideAreaNetwork
|
|
« Ответ #12 : 10 Октября 2018, 11:44:38 » |
|
подскажите пжл, как можно сменить порт, к примеру чтобы человек смог зайти в личный кабинет не просто набирая айпиадрес, а с нужным портом - 192.168.0.1:22222
|
|
|
Записан
|
|
|
|
Pa4ka
|
|
« Ответ #13 : 10 Октября 2018, 11:54:42 » |
|
подскажите пжл, как можно сменить порт, к примеру чтобы человек смог зайти в личный кабинет не просто набирая айпиадрес, а с нужным портом - 192.168.0.1:22222
Нужно уточнить, порт чего? Заглушки? Заглушка перекидывает на host_биллинг/cgi-bin/cap.pl Сам веб сервер ето apache и слушаеться на портах по умолчанию 80 и/или 443. А будь-то админка или статистика работает на 80 и/или 443 портах - host_биллинга/cgi-bin/stat.pl Статистику и админку, на сколько мне известно, без шаманства не отделить.
|
|
|
Записан
|
|
|
|
WideAreaNetwork
|
|
« Ответ #14 : 10 Октября 2018, 16:03:25 » |
|
иногда бывают ломятся на 80 порт, просто хочу уйти с дефолтного чтобы как админка так и статистика как и локалка и мир были не на 80 порту пс. noserver.cfg.pm нужно изменить $forward_port = 8080; # на какой порт форвардить на $forward_port = 22222; # на какой порт форвардить ? а также в файле cap.cfg подправить к виду port => 22222, url => 'h t t p://192.168.0.1:22222/cgi-bin/cap.pl', ?
|
|
« Последнее редактирование: 10 Октября 2018, 17:05:39 от WideAreaNetwork »
|
Записан
|
|
|
|
|