Как настроить memcache на nginx + fastcgi - PullRequest
1 голос
/ 10 февраля 2011

На сервере Ubuntu у меня есть сайт drupal, который использует nginx + fastcgi в качестве веб-сервера и использует xcache.Я вполне доволен конфигурацией, но пытаюсь настроить memcache, надеясь повысить скорость работы сайта, но я не уверен, как это сделать.

После установки memcached я добавил расширение = memcache.so в /etc/php5/cgi/php.ini и вижу, что процесс memcache запущен.

Однако через несколько часоввместо лучшей производительности я просто вижу более высокую нагрузку на сервер (в среднем 5 вместо обычных 2).Поэтому я ценю ваш совет по настройке memcache.(Я знаю, что мог бы использовать nginx в качестве обратного прокси-сервера для apache и определить memcache для apache, но я особенно стремлюсь избежать использования apache любыми средствами).

Ответы [ 2 ]

4 голосов
/ 10 февраля 2011

Memcache - это просто хранилище значений ключей.Бесполезно, если ваше приложение не знает, как его использовать.

Добавив extension = memcache.so в php.ini, вы можете включить memcache api только в php.

это, вы должны научить drupal, как использовать memcache, чтобы хранить в нем некоторые данные.Я действительно не знаю, как настроить Drupal для использования memcache, но я думаю, что это очень возможно, и может быть легко изменить.Просто посмотрите на некоторые конфигурационные файлы drupal.

2 голосов
/ 16 марта 2012

Довольно поздно к игре, но если вы находитесь только на одном сервере, memcached просто замедлит вас.Посмотрите на локальное кэширование с помощью APC (или, в вашем случае, локальное кэширование xcache).Я уверен, что у Drupal будут плагины для них.Я предполагаю, что вы используете xcache для кэша кода операции, но не используете его возможности кэша памяти.

Любой тип кэширования не является серебряной пулей.Как упоминалось в CyberDem0n, ваше приложение должно быть достаточно умным, чтобы использовать его: «кешируйте это, не кешируйте это, извлекайте это из кеша и т. Д. И т.работа с несколькими серверами и необходим общий кеш .Если у вас есть один сервер, вы тратите время на сетевые вызовы, когда вы можете просто извлечь объект из памяти (или даже файловой системы, которая в большинстве случаев быстрее, чем сеть).

...