Позднее Ctrl + ↑

Оптимизируем сервак. Memcache


В предыдущей статье я описал пару простых приёмов освобождения оперативной памяти. Сейчас же поговорим насчёт ускорения работы скриптов.

Хорошим тоном нынче является связка Apache + Nginx, которая работает чуть быстрее по сравнению с обычным Апачем, в силу особенностей передачи запросов от Nginx ему. Дополнением к этой связке будет служить мод memcache и eAccelerator, которые призваны кэшировать и ускорять выполнение php-скриптов.

Вкратце, механизм их действия простой: к примеру, если их не использовать, то каждый раз сервер должен выполнять скрипт для посетителя. Если посетителей сотни, а скрипт каждый раз выдаёт одну и ту же информацию для всех, то трата ресурсов получается впустую. Вместо этого ускорители выполняют скрипт один раз и выдают посетителям информацию уже из кэша, без необходимости траты ресурсов на выполнение.

Установка memcache. Способ 1

Всё ниже описанное подходит для серверов с CentOS 5 и им подобным.

Зайдите в шелл (для этого можно использовать популярную программку PuTTy) и вводите следующие команды (можно копировать здесь и вставлять туда правой кнопкой мыши):

cd /usr/local/src
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
rpm -ivh rpmforge-release-0.5.1-1.el5.rf.i386.rpm
yum -y install memcached

После чего в файле /etc/sysconfig/memcached и замените параметр OPTIONS на:

OPTIONS="-l 127.0.0.1"

Добавляем memcache в автозагрузку командами:

/etc/init.d/memcached start
chkconfig memcached on

Следующим пунктом нужно установить библиотеку PHP-memcache:

yum -y install php-pecl-memcache

В файл php.ini (в /etc/) в секцию [extensions] внесите строчку:

extension=memcache.so

Перезагрузите httpd:

/etc/init.d/httpd restart

или

service httpd restart

Установка memcache. Способ 2

yum install libmemcache memcached -y

Стартуем:

memcached -d -m 256 -l 127.0.0.1 -p 11211 -u nobody

Можно также добавить в автозагрузку командами из предыдущего способа. Для следующего шага потребуется наличие библиотеки phpize. Если таковой нет, нужно установить php-devel:

yum install zlib-devel

Устанавливаем библиотеку для работы с PHP:

wget http://pecl.php.net/get/memcache-2.1.2.tgz
tar -xvf memcache-2.1.2.tgz && cd memcache-2.1.2
phpize && ./configure --enable-memcache && make && make install

В файл php.ini (в /etc/) в секцию [extensions] внесите строчку:

extension=memcache.so

Теперь библиотека установлена и должна работать. Обычно она ускоряет работу скриптов примерно на 30%.

Оптимизируем сервак. Часть 1.

Ну, как и обещал, несколько коротких статей с советами о том, что может помочь ускорить ваш VPS.

Имеется достаточно немаленький по объёму сайт, состоящий из MediaWiki и форума. Поскольку со временем он разросся (хоть и не до таких впечатляющих масштабов, как хотелось бы, но хостеров неприятно впечатлил всё же), пришлось искать новый хостинг. Нашли устраивающий и по цене, и по качеству (о нём я уже писал, оперативный саппорт по-прежнему на высоте).

Но вот незадача: вроде бы купленный VPS и работает, но единственный размещённый сайтец немного тормозит (а MediaWiki — много, время генерации главной страницы было порядка 4-6 секунд).

В один прекрасный момент решил всё-таки получше поштудировать интернетную литературу по данному вопросу. Статей написано немало, потому здесь лишь буду пересказывать их содержимое.

Во-первых, достаточно удобно будет обзавестись FTP-аккаунтом от корня сервера, чтобы проводить манипуляции в нём. В шелле хоть и можно производить действия, но гораздо медленнее. Если есть SSH, то можно попробовать установить и соединение по sFTP с логином и паролем администратора. Например, SmartFTP такое позволяет.

Совет 1

Первым делом, если у вас на серве стоит OpenVZ, то маленькая хитрость существенно увеличит объём свободной оперативки, которая нам частично ещё пригодится.

Найдите файл rc (в моём случае он располагается в /etc/rc.d/) и добавьте где-нибудь вверху строчку:

ulimit -s 1024

Это ограничит потребление ресурсов, которое несколько раздута из-за особенностей OpenVZ. Чем меньше значение (в Кбайтах), тем больше должно освободиться памяти, но всё-таки не стоит с этим перебарщивать. После изменения перезагрузите сервер (командой reboot в шелле, например). Одна строчка освободила порядка 100 Мб оперативки, ну и общая загрузка несколько снизилась.

Совет 2

Если не используете в MySQL базы InnoDB, их можно отключить. Найдите файл my.cnf (у меня он лежит в /etc/) и добавьте в секцию [Mysqld] строчку:

skip-innodb

После сохранения перезагрузите сервер БД из шелла, набрав:

service restart mysqld

или

/etc/init.d/mysqld restart

Отключение этой штуки мне дало около 50-80 Мб освободившейся оперативки.

Часть вторая: Оптимизируем сервак. Memcache
Часть третья: Оптимизируем сервак. eAccelerator

Обновился WP 3.1

Поставил последнее обновление движка до версии 3.1.

В блоге теперь есть удобная панелька сверху, можно даже в админку не залазить, чтоб узнать о комментах и обновлениях.

Ах да, скоро постараюсь написать пару статей о том, как можно сэкономить оперативную память на своём серве и ускорить сайты :) Посвящено оптимизации http://gameshows.ru

UPD: ещё одно полезное введение в новой панельке — ссылка на редактирование записей и страниц: теперь их можно убирать из шаблонов, чтоб не мешались.

2011   WordPress   блоги

Заценка сайта ezakol.ru

Чтоб чем-то занять свободное время, решил сократить список желающих заценки. Решил начать с недавнего поступления: блога о бесплатном софте ezakol.ru.

Что в нём интересного? Практически ничего — непримечательный дизайн, самый обычный набор софтов вроде фоксит-ридера, мейлру-агента и прочего. Никаких сверхинтересных программок, способных облегчить мне жизнь, о которых я бы не слыхал, нет.

Совершенно безрадостное царство на грани web 1.0 и web 2.0. От второго там только движок, от первого — идея и внешний вид.

Шаблон у бложика совершенно скучный и квадратный, хотя и выразительный, с вполне сочетающейся гаммой. Логотип нынче любой школьник может нарисовать и покрасочнее, ну и уж тем более называть что-то «лучшим» — не совсем правильно. Ну и некоторые замечания по дизу я написал на превьюшке.

Тем не менее достаточно небольшое количество рекламы позволяет расценить блог как СДЛ (хотя не исключено, что со временем он таковым быть перестанет — из-за отсутствия перспектив). В любом случае, нынче трудно пробиться в топы, делая блоги по таким популярным темкам, как варез, всякие фотошопные примочки, шаблоны и дизайны и т. п.

Вердикт: 3 / 10

Листы в твиттере — полезная штука

Наверняка уже кто-то из вас пользуется твиттером: пишет свои мысли или читает чужие. Может быть, кто-то узнаёт свежие новости, которые ещё не освещены в СМИ.

Самый простой способ, как быть в курсе, — зафолловить нужные аккаунты и прочитывать ленту. Однако иногда это занятие утомляет, особенно, когда в фолловерах числятся более ста человек, которых интересно и полезно читать.

Есть люди, которые не прочь следить за некоторыми твиттерянами, но не любят наращивать счётчик своих фолловингов по каким-то причинам (ну или просто не давать знать человеку, что ты его читаешь).

Что такое листы?

Есть маленький приём, как организовать поступление твитов, чтобы не мешались вам: листы. Листы — это ограниченные списки людей, сформированные вами по какому-либо признаку.

Расположение листов

Листы можете создавать вы и пихать туда своих знакомых. А могут создать и ваши знакомые и запихать туда вас. В этом случае рядом с параметром «followers:» увеличится и параметр «listed» — список публичных листов, в которых вы числитесь.

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

Создаём свой лист.

Добраться до собственных списков легко, достаточно кликнуть по вкладке «lists» и выбрать нужный. Либо создать новый.

Процесс крайне прост: необходимо ввести заголовок и описание листа, кого вы туда собираетесь вносить. Последнее дело — решить, будете ли вы делать лист публичным или приватным.

Создаём новый список в твиттере

Участники в публичных листах будут видеть у себя на счётчике, кто и куда их засунул. Также на публичные листы вы можете подписаться отдельно — зафолловить лист, прям как отдельный аккаунт.

Приватные же листы видны только вам, а люди, которых вы туда добавили, даже не будут подозревать, что вы их куда-то внесли. Такие списки в твиттере отмечаются пиктограммой замочка.

Интересный факт: необязательно фолловить человека, чтобы добавить его в твиттер-лист и читать его в специальной ленте.

Работа с листами

Редактирование списка
Редактировать листы в твиттере также просто: достаточно зайти на страничку выбранного списка. Там есть и кнопки удаления участника из списка — «unfollow», и меню, которое позволит изменить списки, в которые вы внесли человека.

Также можно изменить описание, тип списка или же удалить и весь лист целиком.

Вы можете рассортировать нужных твиттерян по таким спискам и не фолловить их, чтобы не загрязнять основную ленту, где важна оперативность сообщений.

Так, когда мне становится скучно, я перехожу в список «Юмор» и читаю накопившееся там. В то же время, эти твиты не мешаются мне в основной ленте.

Ранее Ctrl + ↓