Страница 1 из 3
Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 01:13
Bayerische
Товарищи, помогите с такой проблемой:
Есть сервер с несколькими сайтами на борту.
Посещалки почти нету, ну, может, 500 хитов в день суммарно.
Канал 2 МБит, Корбина.
WinServer2003SP2
Apache
PHP (mod)
eAccelerator
Всё работает хорошо, вот только тормозит при отдаче контента. К примеру, шапка сайта (графика) суммарно весит 70 КБ, грузится секунд 10, аж видно, как изображение догружается сверху вниз. Пробую скачать файл — та же беда, 10 Мб качается минут 20. Притом, рывками. Я уж все настройки задрал на максимум, ресурсы полностью не расходуются: четырёхвёдерный Атлон, 4Гб памяти, почти всегда незагруженный. С акселдератором Апач отжирает 64Мб, сами понимаете, это тьфу для такой машины. Куда копать?
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 09:11
Dimanok
eAccelerator отключи.
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 12:18
Bayerische
Dimanok
Изначально было без eAccelerator, это я уж потом поставил, в поиске узкого место. Да, с ним медленнее процентов на 5. Но и без него не быстро. Смотрю график загруженности канала, забития нет. Мерю через разные сервисы скорость загрузки и отдачи, соответствуют договору. Да я и сам вижу, когда пользуюсь интернетом для серфинга — тормозов не ощущается. Файловые операции на машине быстры, диск простаивает. Процессор как писал, отдыхает. А сайты медленно открываются... Пробовал с разных провайдеров: ВТ, SkyLink. Разве что с Корбины не пробовал, но это необъективно, в одной сети нахожусь. В общем, ступор...
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 12:42
Zver
Возможно апачу мешает какой-то из модулей.
Логи что-то интересное сказать могут?
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 12:45
Bayerische
Ошибок нет. Запустился, выгрузился.
Список модулей:
- Код: Выделить всё • Развернуть
actions_module modules/mod_actions.so
alias_module modules/mod_alias.so
asis_module modules/mod_asis.so
auth_basic_module modules/mod_auth_basic.so
authn_default_module modules/mod_authn_default.so
authn_file_module modules/mod_authn_file.so
authz_default_module modules/mod_authz_default.so
authz_groupfile_module modules/mod_authz_groupfile.so
authz_host_module modules/mod_authz_host.so
authz_user_module modules/mod_authz_user.so
autoindex_module modules/mod_autoindex.so
cgi_module modules/mod_cgi.so
deflate_module modules/mod_deflate.so
dir_module modules/mod_dir.so
env_module modules/mod_env.so
expires_module modules/mod_expires.so
include_module modules/mod_include.so
isapi_module modules/mod_isapi.so
log_config_module modules/mod_log_config.so
mime_module modules/mod_mime.so
rewrite_module modules/mod_rewrite.so
setenvif_module modules/mod_setenvif.so
php5_module
- Код: Выделить всё • Развернуть
<IfModule mpm_winnt_module>
ThreadsPerChild 200
MaxRequestsPerChild 0
</IfModule>
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 12:53
Dimanok
Версия Apache? Логи и httpd.conf не помешает.
Да и если с корбины будет нормально открывать - это уже проблема провайдера ( скорости ).
Не локал же всё-таки ( корбина-вт-скайлинк ). Так и на любой сайт ВТ с другого провайдера не быстро будет открываться
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 13:09
Bayerische
В сухом остатке httpd.conf
- Код: Выделить всё • Развернуть
ServerRoot "C:/Server/Apache"
ServerTokens Prod
ServerSignature Off
Listen 80
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule expires_module modules/mod_expires.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule php5_module "C:/Server/PHP/php5apache2_2.dll"
ServerAdmin your@email.name
ServerName localhost:80
DocumentRoot "d:/Documents/Sites/public_html/localhost"
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "d:/Documents/Sites">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.php index.html index.htm index.html.var
</IfModule>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
ErrorLog "logs/error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" common
</IfModule>
<IfModule alias_module>
</IfModule>
<IfModule cgid_module>
</IfModule>
AddDefaultCharset utf-8
DefaultType text/plain
<ifmodule mod_deflate.so>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript
DeflateCompressionLevel 9
</ifmodule>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php php phtml
ScriptAlias /_php_/ "C:/Server/PHP/"
Action application/x-httpd-php "/_php_/php-cgi.exe"
AddHandler cgi-script .cgi .bat .exe
</IfModule>
Alias /error/ "d:/Documents/Sites/public_html/error/"
ErrorDocument 404 /error/er404.php
ErrorDocument 403 /error/er403.php
ErrorDocument 500 /error/er500.php
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-vhosts.conf
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
PHPIniDir "C:/Server/PHP"
error.log
- Код: Выделить всё • Развернуть
[Sun Oct 10 13:07:26 2010] [notice] Apache/2.2.14 (Win32) configured -- resuming normal operations
[Sun Oct 10 13:07:26 2010] [notice] Server built: Sep 28 2009 22:41:08
[Sun Oct 10 13:07:26 2010] [notice] Parent: Created child process 8184
[Sun Oct 10 13:07:26 2010] [notice] Child 8184: Child process is running
[Sun Oct 10 13:07:26 2010] [notice] Child 8184: Acquired the start mutex.
[Sun Oct 10 13:07:26 2010] [notice] Child 8184: Starting 200 worker threads.
[Sun Oct 10 13:07:26 2010] [notice] Child 8184: Starting thread to listen on port 80.
- Код: Выделить всё • Развернуть
C:\Documents and Settings\Администратор>C:\Server\Apache\bin\httpd -V
Server version: Apache/2.2.14 (Win32)
Server built: Sep 28 2009 22:41:08
Server's Module Magic Number: 20051115:23
Server loaded: APR 1.3.9, APR-Util 1.3.9
Compiled using: APR 1.3.9, APR-Util 1.3.9
Architecture: 32-bit
Server MPM: WinNT
threaded: yes (fixed thread count)
forked: no
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/winnt"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/apache"
-D SUEXEC_BIN="/apache/bin/suexec"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_ERRORLOG="logs/error.log"
-D AP_TYPES_CONFIG_FILE="conf/mime.types"
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 13:41
Dimanok
Не знаю чем и помочь. Был бы сервер на *nix такие проблемы бы наверное и не возникли, посоветовал бы nginx в связке с апачем.
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 14:57
Rostov114
Тут 2 варианта, читать много доков о гибкой настройке Apache и потом языком вылизывать весь Apache.
Или же поставить *nix со связкой Nginx и Apache.
Re: Сервер медленно отдаёт контент
Добавлено:
10 окт 2010, 15:17
Bayerische
nginx да, часто советуют. Но блин, неужели Апач под Win не может нормально работать сам по себе?
По конфигурации вроде бы учёл все факторы, что нашёл в сети.
В моём конфиге видно:
Timeout
KeepAlive
MaxKeepAliveRequests
KeepAliveTimeout
WinNT MPM (MaxRequestsPerChild, ThreadsPerChild)
Ума не приложу, что ещё можно накрутить.
Кстати, в ФОСе заходил к людям на локальные сайты, очень даже неплохо работают, тяжёлые CMS быстро грузятся. Или у них другие серверы...
Никто не в курсе, как объективно комплексно оценивать скорость загрузки? Пробовал на webo.in, пишет кучу цифр, про загрузку отдельных частей страницы, стилей. А меня именно отдача интересует, вне зависимости от характера контента. Оптимизировать страницы успею потом.
Да, общался как-то с Женей Крыловым по джабберу, он говорит, что в свою бытность админом ресурса прекрасно под Win всё держал, устраивало.