- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Помогите донастроить nginx+apache (mod_php+xcache)
страница грузится быстро, а вот php запросы в базу и обратный вывод картинок долго тупит...
текст и шаблон загрузился, после по очереди появляются картинки, как-будто нельзя в несколько потоков их грузить???
конечно может дело в Joomla+Virtuemart, но при пользовании apache+fcgi или nginx+fcgi, нигде такого тормоза не наблюдал... копаюсь второй день, пробую разные конфигурации apache2.conf и nginx.conf, но почему-то не помогают, или не там копаю, или у меня всё работает как должно :(
Люди добрые, что сделать?
последняя версия apache2.conf
PidFile ${APACHE_PID_FILE}
Timeout 60
KeepAlive Off
MaxKeepAliveRequests 50
KeepAliveTimeout 5
<IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 2
MaxSpareServers 20
MaxClients 20
MaxRequestsPerChild 1000
</IfModule>
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 2
MaxSpareThreads 30
ThreadLimit 210
ThreadsPerChild 210
MaxClients 25
MaxRequestsPerChild 1000
</IfModule>
<IfModule mpm_event_module>
StartServers 2
MaxClients 25
MinSpareThreads 15
MaxSpareThreads 55
ThreadLimit 64
ThreadsPerChild 55
MaxRequestsPerChild 1000
</IfModule>
User www-data
Group www-data
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
DefaultType text/plain
HostnameLookups Off
ErrorLog /var/log/apache2/error.log
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Include /etc/apache2/httpd.conf
Include /etc/apache2/ports.conf
Include /etc/apache2/conf.d/
Include /etc/apache2/sites-enabled/
nginx.conf
worker_processes 2;
pid /var/run/nginx.pid;
events {
worker_connections 64000;
use epoll;
}
http {
limit_req_zone $binary_remote_addr zone=one:10m rate=3r/s;
include /opt/nginx/conf/mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
client_max_body_size 100m;
tcp_nodelay on;
gzip off;
server {
listen 80;
server_name domen.in www.domen.in;
location / {
limit_req zone=one burst=30;
proxy_pass http://127.0.0.1:81;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+.(phpmyadmin/|administrator/) {
proxy_pass http://127.0.0.1:81;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css)$ {
root /home/domen.in;
error_page 404 = @fallback;
}
location @fallback {
proxy_pass http://127.0.0.1:81;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
location ~ /\index.html {
root /home/domen.in;
}}}
skyscr, Вы какие mpm модули используете? Покажите, пож.,
---
Victor
httpd не знает такой команды....
подключенные модули к апачу:
alias,
auth_basic,
authn_file,
authz_default,
authz_groupfile,
authz_host,
authz_user,
autoindex,
cgi,
deflate,
dir,
env,
filter,
mime,
mod-evasive,
negotiation,
php5,
reqtimeout,
rewrite,
rpaf,
setenvif,
ssl,
status,
suexec
skyscr добавил 14.10.2010 в 14:20
Server version: Apache/2.2.14 (Ubuntu)
Server built: Aug 19 2010 03:20:29
Server's Module Magic Number: 20051115:23
Server loaded: APR 1.3.8, APR-Util 1.3.9
Compiled using: APR 1.3.8, APR-Util 1.3.9
Architecture: 32-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT=""
-D SUEXEC_BIN="/usr/lib/apache2/suexec"
-D DEFAULT_PIDLOG="/var/run/apache2.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="/var/run/apache2/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"
хотите сказать дело в prefork?
skyscr добавил 14.10.2010 в 18:15
как переконфигурировать с prefork на worker и когда понадобится возможно ли вернуть обратно?
Причем тут prefork/worker?
Джумла написана плохо и серверные настройки не спасут
как какая разница, worker делает многопоточность из скриптов, а prefork ждет каждый скрипт и из-за этого надежнее workera, но тормознее... или я не прав, Вы же админ =)
skyscr добавил 14.10.2010 в 19:33
как понял мне поможет
"sudo apt-get install apache2-mpm-worker"
как какая разница, worker делает многопоточность из скриптов, а prefork ждет каждый скрипт и из-за этого надежнее workera, но тормознее... или я не прав, Вы же админ =)
skyscr добавил 14.10.2010 в 19:33
как понял мне поможет
"sudo apt-get install apache2-mpm-worker"
причем тут mpm? - вы же пишете, что картинки многопоточно не грузит, они же у Вас nginx'ом раздаются :D
вообще prefork и надежнее, хотя и несколько тише, в случае, если статику раздает nginx вы от worker'а не только плюса не получите, а наоборот кучу проблем поимеете :)
по всей видимости keepalive надо крутить, nginx очень хочет отдать все картинки через одну сессию (как совет - уменьшите таймаут keepalive'а до 2-5 секунд)
включил keepalive и сделал 2 сек и 0 сек, разницы нет, может сделать отдельно локацию для папки с нужными картинками через apache.... или мож что-нить ещё посоветуете?
Попробуйте сделать, чтобы nginx полностью все брал от апача. Пусть у него конфиг будет вида:
listen 80;
server_name *.*;
# proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=one:50m;
# access_log /var/log/nginx/localhost.access.log;
access_log off;
location / {
proxy_pass proxy_pass http://127.0.0.1:81;;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 100m;
client_body_buffer_size 128k;
# proxy_connect_timeout 90;
# proxy_send_timeout 90;
# proxy_read_timeout 90;
# proxy_buffer_size 8k;
# proxy_buffers 8 64k;
# proxy_busy_buffers_size 64k;
# proxy_temp_file_write_size 64k;
}
}
Я оставил закоменченными значения буферов для прокси, которые я когда то взял уже-не-помню-откуда с целью оптимизации работы nginx как прокси.
Данный конфиг работает на нескольких достаточно нагруженных серверах.
включил keepalive и сделал 2 сек и 0 сек, разницы нет, может сделать отдельно локацию для папки с нужными картинками через apache.... или мож что-нить ещё посоветуете?
Оставьте включенным - с ним лучше будет.
как какая разница, worker делает многопоточность из скриптов, а prefork ждет каждый скрипт и из-за этого надежнее workera, но тормознее... или я не прав, Вы же админ =)
Да, но чтобы реализовать это преимущество, нужно было Джумлу писать как многопоточное приложение. А как верно заметил Andreyka:
Джумла написана плохо и серверные настройки не спасут
К тому же prefork на то и prefork, чтобы держать уже готовые форки заранее. И нет разницы создать новую нить в воркере или подключиться к готовому форку в префорке.
alivar, настройки не помогли...
bugsmoran, всё понятно, спасибо за подробности... =)
думаю оставить 1 prefork, но не знаю даже примерного лимита посещений, есть примеры?
и ещё хотел узнать почему-то ссылки настроенные в flash баннере, когда заходишь с адресом без www. открывает, а с www. не видит...
а почему бы не использовать nginx+php-fpm например и не мучаться? если уж не тормозит...
или если таки действительно
php запросы в базу и обратный вывод картинок долго тупит
то я бы прикрутил кеширование, дабы не дергать несчастную БД и пхп из-за каких-то там смайликов\иконок, пусть даже и фоток...
покажите как там в Joomla грузятся эти картинки, попробуем составить конфиг...