Понедельник, 23.12.2024, 19:31
# FreeBSD ГлавнаяРегистрацияВход
Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Мои статьи [167]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
 Каталог статей 
Главная » Статьи » Мои статьи

Как ускорить веб-сервер? или установка XCache

Как правило, наибольшую нагрузку на веб-сервер создают процессы php и mysqld, конечно нужно оптимизировать код веб-сайтов и оптимизировать структуру и запросы к базе данных.

Но.. не всем дано, да и железо сейчас настолько мощное, что без труда переваривает кучу информации.
Одна из возможностей ускорить выполнение php-кода и в следствии чего разгрузить сервер и получить прирост генерации страниц сайта - это установка системы кеширования результатов выполнения скриптов PHP.

Такая система не одна, сейчас пользуются популярностью eAccelerator, XCache, APC..

Первой системой что я начал использовать была eAccelerator.
Но на последней связке FreeBSD 8 + apache-2.2.14 + php 5.3.2, eAccelerator пошел в отказ и не хотел работать, ругаясь при этом примерно так

eAccelerator: shmmax should be at least 2MBPHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0
PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0
failed

Попробовав различные танцы с бубном и уменьшал память для кеша и увеличивал kern.ipc.shmmax, вот только не пробовал ulimit -SHn 65535, я решил что это знак и нужно попробовать другую систему кеширования.

Выбор пал на XCache, и так начнем..

cd /usr/ports/www/xcache ; make install clean

Из опций, ничего не отмечаю
Enable code coverage dumper
по умолчанию она не включена и служит для определения предотвращения переполнения памяти

после установки копируем конфиг
cp /usr/local/share/examples/xcache/xcache.ini /usr/local/etc/php/

создаем пароль для доступа в админку
md5 -s FWFWGd232fgfd4334 (пароль и хэши я изменил :-) )

Правим конфиг под себя
ee /usr/local/etc/php/xcache.ini

в строку xcache.admin.pass вставляем хэш пароля который получился после выполнения md5 -s ..
параметр xcache.size устанавливайте в зависимости от количества оперативной памяти сервера

[xcache-common]
extension = xcache.so
 
[xcache.admin]
xcache.admin.enable_auth = On
xcache.admin.user = "admin"
xcache.admin.pass = "8fa3ad1043ac3280f2c3cf90273c718a"
 
[xcache]
xcache.shm_scheme = "mmap"
xcache.size = 256M
xcache.count = 4
xcache.slots = 8K
xcache.ttl = 0
xcache.gc_interval = 0
 
xcache.var_size = 4M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
 
xcache.test = Off
xcache.readonly_protection = Off
xcache.mmap_path = "/dev/zero"
 
xcache.coredump_directory = ""
 
xcache.cacher = On
xcache.stat = On
xcache.optimizer = On
 
[xcache.coverager]
xcache.coverager = Off
xcache.coveragedump_directory = ""

Перезапускаем apache

apachectl -k graceful

и проверяем подключился ли XCache

php-cgi -v

должна быть примерно такая строка with XCache v1.3.0, Copyright (c) 2005-2009, by mOo

Последний шаг - подключаем админку XCache
для этого копируем содержимое каталога /usr/local/share/examples/xcache/admin в нужный нам каталог веб-сервера, далее проверяем заходим по адресу, вводим логин и пароль (см. конфиг) и вуаля! Мы можем видеть чем живет наш XCache.

Категория: Мои статьи | Добавил: Admin (08.04.2011)
Просмотров: 1840 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024Сделать бесплатный сайт с uCoz