eAccelerator, APC, XCache и Memcache - тесты 2015

12
D
На сайте с 28.06.2008
Offline
1108
4462

Навеяно соседней темой и собственным предстоящим выбором. Давайте разведем свежий холивар на тему какая связка быстрее.

Прошу вас, не балагурить с потолка, а опираться на свои тесты максимум годовалой давности.

30 мин. почитал сеть, самое свежее сравнение, что нашел вот (этот тест делался в начале 2015):

Ubuntu Server + Nginx + php-fpm + memcache + opcache

Время: 0,1317 сек.

Память: 5,901 МБ

Запросов к БД: 21

Ubuntu Server + Nginx + php-fpm + memcache

Время: 0,3201 сек.

Память: 7,207 МБ

Запросов к БД: 22

Windows + Apache + PHP-CGI + Xcache

Время: 0,2099 сек.

Память: 6,877 МБ

Запросов к БД: 17

Z
На сайте с 06.09.2012
Offline
129
#1

А зачем? Процессора обычно хватает, это с памятью всегда туго, а все эти кэши опкода, кроме того, что память кушают, так еще и не без проблем, на стабильности плохо скажутся.

Черный список врунов и обманщиков: ua-hosting.company, riaas.ru, takewyn.ru, yahoster/cadedic, Andreylab
iHead
На сайте с 25.04.2008
Offline
137
#2

opcache - наиболее оптимальный вариант, тем более, что он поставляется с PHP начиная с ветки 5.5. Его авторы - те же люди, которые пишут сам PHP.

Рекомендуемый хостинг партнер 1С-Битрикс (https://www.ihead.ru/bitrix/), PHP-хостинг (https://www.ihead.ru/php/), доверенный партнер RU-CENTER (https://www.ihead.ru/news/573.html), официальный представитель REG.RU в Кирове (https://www.ihead.ru/news/851.html)
lealhost
На сайте с 07.06.2014
Offline
136
#3

В первом посте не особо понятно, что с чем сравнивается. Последний результат теста вообще под Windows. Возможно, на разных машинах тестировалось?

Но в целом тему поддерживаю.

[Удален]
#4

Зачем тут виндовс в сравнении? Нужно сравнивать одну машину, с теми же параметрами, с идентичными настройками.

Какие данные кэшировались в memcached?

Во втором тесте нехватает элемента, например APC. Ну или сделать 4-й тест, как 2-й + APC.

K5
На сайте с 21.07.2010
Offline
209
#5

а все таки: соседняя тема - понятие расплывчатое, кто подопытный?

чистый вордпресс 4.2.2 ?

аська 45два48499два записки на работе (http://memoryhigh.ru) помогу с сайтом, удалю вирусы, настрою впс -> отзывы ТУТ (/ru/forum/836248) и ТАМ (http://www.maultalk.com/topic140187.html) !!!всегда проверяйте данные людей, которые сами пишут вам в аську или скайп!!!
V
На сайте с 05.08.2007
Offline
87
#6

Как по мне:

- сравнивать нужно сравнимые вещи. Как можно сравнивать Memcached, который работает с пользовательсткими данными, и eAccelerator, который уже давно не умеет работать с пользовательскими данными а предназначен для кеширования байт-кода? Задачи кеширования пользовательских данных и кеширования байт-кода php - разные задачи.

- сравнивать нужно для конкретного случая, конкретной задачи. В одной системе может оказаться более оптимальным одно решение, для другой - другое. Например, старый сайт, php5.2, о каком opcache может идти речь вообще?

Еще замечание: если бы какой "ускоритель" существенно опережал конкурентов, скорее всего, он довольно быстро завоевал бы основную долю рынка. Так что, если задача кешировать байт-код, разрыв между eAccelerator, APC, XCache и opcache будет небольшой. Но у каждого могут быть свои "фичи", которые дают ему преимущество в том или ином конкретном случае.

Ссылка на тесты eAccelerator vs opcache для Битрикс.

---

Виктор

С уважением, Victor (http://adm-lib.ru)
seocore
На сайте с 25.09.2006
Offline
143
#7
Dram:
Прошу вас, не балагурить с потолка, а опираться на свои тесты максимум годовалой давности. Ubuntu Server + Nginx + php-fpm + memcache + opcache

не буду приводить сами замеры, но год назад тестировал WordPress + W3TC с различными конфигурациями ПО (вкл. nginx + php-fpm, memcache и т.п.), лучше всего показала себя схема с mod_php + xcache, тупо быстрее всех остальных решений (хотя по экономии ОЗУ конечно же совсем не то) 🍿

VGrey:
Как можно сравнивать Memcached, который работает с пользовательсткими данными, и eAccelerator, который уже давно не умеет работать с пользовательскими данными а предназначен для кеширования байт-кода? Задачи кеширования пользовательских данных и кеширования байт-кода php - разные задачи.

совершенно верно, никто же не мешает кешировать байт-код (и оптимизировать) при помощи eAccelerator'а и одновременно юзать memcache для пользовательских данных, например по кешированию байткода (в моих тестах с WP/DLE) по прежнему eAccelerator в лидерах, но в виду того, что они отказались от пользовательского кеширования (оно у них глючило), то как бы xcache стал более оптимальным выбором, если же брать стабильность, то лучше memcache юзать, но что через сокет\сеть он все равно проигрывает APC/xcache решениям в скорости

VGrey:
Так что, если задача кешировать байт-код, разрыв между eAccelerator, APC, XCache и opcache будет небольшой. Но у каждого могут быть свои "фичи", которые дают ему преимущество в том или ином конкретном случае.

в точку, там разрыв между ними уже не существенный и лучше обращать внимание на стабильность работы и удобство эксплуатации в продакшне

Инструменты для веб-мастера: кластеризатор СЯ (https://goo.gl/MQWfqO), все запросы конкурента (https://goo.gl/hd5uHS), дешевые XML-лимиты (https://goo.gl/aDZbPI)
UF
На сайте с 25.12.2011
Offline
28
#8

Debian 7: apache2+nginx+mysql+xcache все с официальных источников.

Apache2 более менее конфигурируетсья как нужно, копать нужно в сторону более мощного nginx ;)

Хотя сейчас некоторые разработчики начали более гибко оптимизировать ту или иную программную часть самого скрипта.

seocore
На сайте с 25.09.2006
Offline
143
#9
UnFeeLing:
Debian 7: apache2+nginx+mysql+xcache все с официальных источников.
Apache2 более менее конфигурируетсья как нужно, копать нужно в сторону более мощного nginx ;)

вопрос в удобстве, если это десяток своих сайтов, то да - nginx + php-fpm, это более гибкое и экономное решение, но есть же и другие ситуации

и все не так очевидно, например то же пользовательское кеширование может существенно сократить нагрузку на БД, тупо закешировав выборки из БД, в разы сократить "отрисовку" страницы, а разница между 0.1 секундой на отрисовку и 0.01 секунды - десятикратная, т.е. apache+mod_php отрисует в 10 раз больше страниц (в теории) за секунду, стало быть потенциально выдержит в 10 раз большее число конкурентных запросов к серверу, и нет смысла отказываться от оптимизации и кеширования на разных уровнях, наоборот, надо максимально использовать потенциал этих возможностей

а можно вообще подойти хардкорно и закешировать саму динамику на уровне nginx, сложив её в tmpfs, после чего уже не страшны десятки тыс. конкурентных запросов и вообще плевать на производительность в целом, но мы же не об этом? :)

D
На сайте с 28.06.2008
Offline
1108
#10

Загрузка главной страницы Джумла 2,5 по данным ее дебаг панели

Дебиан + Nginx + php-апач + opcache

(с родным кешем джумлы 0,125) - обработчик файл

(с кешем 0,11) - обработчик АPC

(с кешем 0,12) - обработчик Мемкеш

байткод кешируется opcache

(с родным кешем джумлы 0,125) - обработчик файл

байткод кешируется еаксилератор

Дебиан + Nginx + php-fm + АPC

(с кешем 0,086) - обработчик АPC

Дебиан + Nginx + php-fm + opcache

(с кешем 0,084) - обработчик Мемкеш

Дебиан + Nginx + php-апач + opcache

(с кешем 0,115) - обработчик Мемкеш

--------------------------------------------------------------------------------

На другом серваке этот же сайт. байткод кешируется еаксилератор

Дебиан + Nginx + php-апач + еаксилератор

0.060 seconds - без кеша

(с родным кешем джумлы 0,035) - обработчик файл

Процессоры и диски у серверов почти одинаковые

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий