Pull to refresh
  • by relevance
  • by date
  • by rating

Пример использования eAccelerator для нагруженного php-проекта

Website development *
Наш новый фронтенд-сервер сейчас вполне справляется с нагрузкой и в оптимизации не нуждается (чего нельзя сказать о базе данных), но после того, как я очередной раз посмотрел на его top, мне вдруг стало жалко ожесточённо разнашиваемых дисков, и я решил уделить этому пару минут и поставить eAccelerator.

Вот что получилось
Total votes 25: ↑22 and ↓3 +19
Views 3.8K
Comments 75

Борьба с фрагментацией PHP кешеров

Website development *
Я надеюсь, что нормальные люди уже прониклись необходимостью кешировать вывод данных на своих сайтах, либо кэшировать промежуточные результаты работы с базой данных, либо просто кешировать opcode скриптов для их более быстрого выполнения.
И что разработчики предоставляют нам для этого дела?
Читать дальше →
Total votes 32: ↑28 and ↓4 +24
Views 3.5K
Comments 43

Eval или include?

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

Когда пришлось реализовывать дерево комментариев, столкнулся с необходимостью рекурсивного вызова представления (view в MVC). Так как представления у меня, да и практически везде, — это обычные файлы с кусками HTML-кода и возможностью вставки PHP, то подключаются они с помощью include. Мне стало не по себе, когда представил как этот include вызывается рекурсивно сотни раз. Первая мысль — засунуть файл представления при первом запросе в память и потом выполнять его через eval. Такой подход позволит кешировать код представлений, и даже хранить его в БД. Так как eval кушает только PHP, а представления у нас чистым PHP-кодом не являются, то обрамляем содержимое в '?>' и '<?php'.

Тесты и выводы
Total votes 41: ↑27 and ↓14 +13
Views 8.8K
Comments 155

Настройка Apache2.2+Nginx+eAccelerator+SVN+Trac на медленном VDS — часть первая

Lumber room
Вторая часть

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


Итак, досталась мне хиленькая VDS от FirstVDS — с Debian и ISPManager.
Попытки оптимизировать ее работу вылились в следующее:

1. Оптимизация Apache и установка Nginx
2. Установка eAccelerator

Ну и для души —

3. Установка SVN
4. Установка Trac.

Читать дальше →
Total votes 15: ↑13 and ↓2 +11
Views 1.4K
Comments 19

Настройка Apache2.2+Nginx+eAccelerator+SVN+Trac на медленном VDS — часть вторая

Lumber room
Первая часть

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


С Subversion и Trac пришлось помучаться — здесь напишу финальный, заработавший вариант.

UPD: Рекомендуется сначала попробовать поставить из репозитория, указав соответствующий источник

apt-get install subversion


Subversion — руководствовался в основном этим.

Читать дальше →
Total votes 17: ↑14 and ↓3 +11
Views 694
Comments 9

Польза кеширования данных. Пример из реальной практики.

Website development *
С появлением и развитием memcached-подобных систем в архитектурах веб-приложений появилось еще одно звено, а именно кеш-серверы. Обычно это машины с большим объемом оперативной памяти, в которой хранятся заранее подготовленные данные. Это могут быть результаты сложных запросов к БД или же отрендеренные динамические части страниц сайта. На самом деле, кеш, как и любая другая система, может использоваться как угодно, чтобы удовлетворить нужды приложения.

Суть кеширования проста.
Total votes 53: ↑43.5 and ↓9.5 +34
Views 3.1K
Comments 90

Разгоняем Wordpress

High performance *
SEO Digest #5Данный обзор написан специально для SEO Digest — популярного онлайн-журнала среди вебмастеров и поисковых оптимизаторов. Публикуемые в нем материалы рассчитаны на широкую аудиторию пользователей: от профессионалов Рунета до любителей и начинающих. Журнал доступен в PDF и онлайн версии.

Wordpress является сейчас наиболее популярной платформой для одиночного хостинга блогов. Ряд хостинг-провайдеров уже даже предлагают площадки с предварительно установленным Wordpress, а в большом количества изданий рассуждают, как лучше заработать на новом блоге или правильно его использовать. Я собираюсь осветить один из основных вопросов, встающих перед администраторами блогов: как сделать так, чтобы сайт быстро работал. Нижеизложенный материал рассчитан на максимально широкую аудиторию пользователей.

Основные положения


Ускорение работы любой системы возможно в основном за счет кэширования некоторых (тут стоит подчеркнуть, что именно некоторых, а не всех подряд) часто используемых операций. Все кэширующие мероприятия, в том числе и для Wordpress, можно разбить на несколько основных частей:
  • База данных
  • Компиляция серверных скриптов (PHP)
  • Статические страницы
  • Клиентская составляющая

Читать дальше →
Total votes 69: ↑59 and ↓10 +49
Views 35K
Comments 23

Explay CMS 3.0 alpha

CMS *
Explay CMSСегодня у меня лопнуло терпение и захотелось показать миру Explay CMS 3.0. Прошло уже 8 месяцев с того момента, как я начал делать 3-ю версию. В январе было готово ядро, только вот тогда еще рано было говорить о том, что на нем можно сделать. CMS свою социальность, естественно, не потеряла, и даже приобрела несколько новых и интересных функций. Сейчас же я расскажу вам о том, что достигнуто. Посмотрите и попробуете, надеюсь, сами:)
Читать дальше →
Total votes 61: ↑48.5 and ↓12.5 +36
Views 1.1K
Comments 48

Установка nginx + php-fpm + memcache + eaccelerator на FreeBSD

Server optimization *
Зачем всё это? — спросите вы. Да просто захотелось поделиться с общественностью некоторым опытом, полученным в процессе оптимизации vds под нужды одного общеизвестного блого-социального движка, который на обычном хостинге чувствует себя, мягко скажем, некомфортно.

Началось всё с того, что я ушёл от firstvds, где уже ничто не спасёт от тормозов. Ушел на ганди.нет, взял одну шару (1 share), которую дали на месяц бесплатно. Кстати, акция эта (This summer, your server is free!) вроде еще не закончилась. ;) И начал на этой шаре проводить зверские эксперименты с установкой разного ПО. Тестировал результаты с помощью siege.

В итоге конфигурация из сабжа оказалась самая быстрая. Опытом её установки и настройки я и хотел бы с вами поделиться.

Поехали!
Total votes 90: ↑74 and ↓16 +58
Views 48K
Comments 48

Выбор хостинга для LiveStreet: на повестке дня TrueVDS.ru

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

Пару дней назад я говорил, что перешёл на ганди.нет, где тестировал разный софт. К сожалению, тесты не сохранились и в заметке я ограничился описанием установки софта под FreeBSD.

Совершенно неожиданно мне поступило предложение от TrueVDS.ru написать инструкцию по установке софта под Дебиан для новичков и протестировать некоторые тарифные планы. Инструкцию и тесты решил разбить на два поста, т.к. кому-то интересно одно, кому-то другое, а текста получилось многовато, тяжело для восприятия. Установка софта под Дебиан тут,
а тестирование здесь
Total votes 49: ↑34 and ↓15 +19
Views 4.4K
Comments 48

Установка для «чайников»: nginx + php-cgi + mysql + eaccelerator + memcache на Debian 5.0 «lenny»

Server optimization *
Данная заметка является шпаргалкой для новичков в установке нормально работающего комплекса, описанного в заголовке. Все пункты установки протестированы несколько раз на разных vds, поэтому проблем с нехваткой чего-то быть не должно, как это обычно бывает, когда ставишь что-то по мануалам, надерганных из разных источников. Подробно описания настроек и «тюнинга» в заметке нет, т.к. это всё очень индивидуально и требует понимания что, как и зачем делается, а это невозможно охватить в одной даже очень большой шпоре.
Читать дальше →
Total votes 76: ↑56 and ↓20 +36
Views 77K
Comments 78

Zend_Soap_AutoDiscover и eAccelerator

Zend Framework *

Всем привет! Хочу рассказать об одной проблеме, с которой я столкнулся совсем недавно. Надеюсь, что мой опыт, описанный в данной статье, поможет сэкономить часы и нервные клетки тем людям, кто занимается разработкой SOAP сервисов с использованием Zend Framework, и в частности класса Zend_Soap_AutoDiscover.
Проблема заключается в том, что Zend_Soap_AutoDiscover отрабатывает некорректно вкупе с использованием известного оптимизатора кода eAccelerator. А именно, если быть точным некорректно работает метод ReflectionClass::getDocComment(). Но… обо всем по порядку.
Читать дальше →
Total votes 19: ↑16 and ↓3 +13
Views 2.8K
Comments 15

Сравнение производительности веб-серверов на примере Wordpress

System administration *

Введение


В этом посте я буду описывать то, как я проводил тестирование производительности веб-серверов.
Его цель в том, чтобы показать какие есть способы оптимизации производительности веб-сервера, особенно в условиях ограниченных по мощности VDS.

Конфигурации


Все тесты производятся на виртуальной машине с конфигурацией 1 ядро i5 2400 и 512 ОЗУ.
В качестве ОС используется Debian 6 x86. Apache 2.2.16, Nginx 1.1.4, eAccelerator 0.9.6.1, PHP 5.3.8, MySQL 5.1.49.
Nginx и Apache используются практически в стандартных конфигурациях, используют одну и ту же папку www, одну и ту же базу данных. Nginx работает через php-fpm. На всё это установлен чистый wordpress. Тестирование производится при помощи Apache Benchmark, который идет в комплекте с Apache.
Тестировал командой «ab -c 5 -n 300», что означает 300 раз по 5 параллельных запросов.
Основным методом увеличения производительности стал eAccelerator.

Читать дальше →
Total votes 44: ↑16 and ↓28 -12
Views 6.8K
Comments 19

Я медленно удаляю apache с сервера

Server optimization *
image
Есть у меня серверок (да, да, именно серверок, сервером его назвать сложно). Железо старенькое (2 гига оперативы, AMD Athlon(tm) 64 Processor 3500+, програмный RAID). Админю я его сам, без особых навыков и познаний. Когда-то давным давно (больше года назад) поставил на него Debian 5.0 Lenny (это была вторая в жизни установка linux-системы, до этого ставил только Ubuntu на рабочий ноутбук) и панель управления ISPConfig3 по мануалу. Держу на нем несколько (штук 40) сайтов друзей и клиентов, Redmine, SVN и еще немного по мелочам.
Периодически все это безобразие падает (load average > 20), и приходится на сервере раз в пару часов перегружать apache или высасывать из пальца очередную попытку оптимизации. В общем полный раздрай и разруха. И вот в одну прекрасную субботу я подумал — а почему бы не решить вопрос раз и… И вот в общем.
Под катом — история убитых выходных + предыстория. Интересна в первую очередь мне, чтобы потом легко вспомнить что именно и зачем я ставил. Может быть интересна новичкам в интересном и нелегком (ох, ...) деле серверной оптимизации постепенным(!) переводом сайтов из-под Apache c его ModRewrite под Nginx (кстати, правильно это слово читается «энжинкс»меня поправили, Сысоев на конференциях не раз говорил, что название сервера стоит читать, как «энжин-икс», спасибо bayandin и DorBer ). Возможно, будет интересна более-менее опытным товарищам, оказавшимся в тех же условиях (Debian Lenny, ISPConfig3, слабое железо, несколько хороших, не сильно хороших и разных сайтов). И более опытным может быть интересно зайти, оставить пару комментариев.
Если интересно - нажмите сюда, если нет - нажмите звездочку ниже
Total votes 167: ↑137 and ↓30 +107
Views 53K
Comments 184

Решение проблемы «пустой админки» MODX Revo

MODX *
При установке MODX Revolution у многих возникает проблема с тем, что при заходе в админку не загружается основное содержимое (правый блок).

Такое поведение — следствие работы работы модуля Suhosin и/или eAccelerator.

Под катом решения.
Читать дальше →
Total votes 7: ↑5 and ↓2 +3
Views 42K
Comments 26

Настраиваем свой первый VDS сервер в роли веб-сервера

Nginx *
Sandbox
Tutorial
Добрый день.

Так уж сложилось, что последнее время пришлось достаточно часто менять VDS провайдеров, и каждый раз приходится заново настраивать систему, поэтому решил написать краткий конспект по настройке. Все нижеописанное корректно работает на ОС Linux Ubuntu server 12.04 LTS. В этой статье я опишу как установить и произвести первичную настройку nginx+apache2, eaccelerator, memcached, fure-ftpd, php, mysql, phpmyadmin а также панели управления игровыми серверами — open game panel.
Читать дальше →
Total votes 99: ↑67 and ↓32 +35
Views 44K
Comments 87

Безопасный и шустрый веб-сервер на Debian 7

*nix *
Recovery mode
Sandbox
Статья, находится в процессе написания, но я готов выслушать дельные советы и комментарии, а затем доплнить или поправить материал.
Прежде всего, данный материал ориентирован на новичков и тех, кто держит на одном VPS сразу несколько сайтов, при этом хочет иметь как безопасный, так и шустрый веб-сервер.
В качестве веб-сервера у нас будет выступать связка:

Apache 2.2 + PHP 5.4.4 + MySQL 5.5 + NGINX 1.2.1 + eAccelerator + memcached + vsftpd 3.0.2 + exim.

Все это чудо будет крутиться на Debian 7.

Начнем.

Читать дальше →
Total votes 58: ↑21 and ↓37 -16
Views 86K
Comments 82