Linux memcache что это

Как установить Memcached в Ubuntu 20.04

Memcached — это бесплатное высокопроизводительное хранилище данных типа «ключ-значение» в памяти с открытым исходным кодом. Обычно он используется для ускорения приложений путем кеширования различных объектов из результатов API и вызовов базы данных.

В этой статье показано, как установить и настроить Memcached в Ubuntu 20.04.

Установка Memcached

Пакет memcached включен в репозитории Ubuntu 20.04 по умолчанию. Чтобы установить его, введите следующую команду от имени пользователя root или пользователя с привилегиями sudo :

После завершения установки служба memcached запустится автоматически. Чтобы проверить статус услуги, введите:

Результат будет выглядеть примерно так:

Вот и все, вы установили memcached на свой сервер Ubuntu 20.04 и можете начать его использовать.

Настройка Memcached

Параметры Memcached можно настроить в файле /etc/memcached.conf . По умолчанию memcached настроен на прослушивание только на локальном хосте.

Для большинства пользователей достаточно настроек конфигурации по умолчанию.

Удаленный доступ

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

При неправильной настройке memcached может использоваться для выполнения распределенной атаки типа «отказ в обслуживании» (DDoS). Чтобы разрешить удаленный доступ к серверу memcached, вам необходимо настроить брандмауэр и открыть UDP-порт 11211 memcached только от доверенных клиентов.

В следующем примере предполагается, что вы хотите подключиться к серверу memcached через частную сеть. IP-адрес сервера memcached — 192.168.100.20 , а IP-адрес клиента — 192.168.100.30 .

Первый шаг — отредактировать конфигурацию memcached и настроить службу на прослушивание через частный сетевой интерфейс сервера:

Для этого откройте файл конфигурации memcached.conf :

Найдите строку, которая начинается с -l 127.0.0.1 и замените 127.0.0.1 на IP-адрес сервера 192.168.100.20 .

Перезапустите службу Memcached, чтобы изменения вступили в силу:

После настройки службы следующим шагом будет открытие порта memcached в брандмауэре .

Подключение к Memcached

Существует множество реализаций клиентов memcached, написанных для разных языков программирования.

Чтобы использовать Memcached в качестве кэширующей базы данных для вашего PHP- приложения, такого как WordPress, Drupal, Joomla или Magento, вам необходимо установить расширение php-memcached :

Python

Есть несколько библиотек Python для взаимодействия с memcache. Вы можете установить предпочитаемую библиотеку с помощью pip :

Выводы

Мы показали вам, как установить Memcached в Ubuntu 20.04. Для получения дополнительной информации по этой теме обратитесь к Memcached Wiki .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.

Источник

Что такое Memcached

Здравствуйте. Здесь я хочу рассказать о Memcached. Сначала узнаем, что это такое

Memcached — связующее программное обеспечение, реализующее сервис кеширования данных в оперативной памяти на основе парадигмы хеш-таблицы.
(http://ru.wikipedia.org/wiki/Memcached)

Если проще, то это программное обеспечение, предназначенное для кеширования данных в оперативной памяти. В проекции веб-разработки это может помочь так: без кеширования один и тот же код будет генерироваться на сервере заново для каждого посетителя сайта. На генерацию уходят ресурсы хостинга. Если посетителей становится много, это заметным образом сказывается на производительности системы.
С помощью Memcached возможно один раз сгенерировать код сайта и хранить его результат в оперативной памяти, и когда очередной посетитель обратится к сайту, то хостинг, вместо того, чтобы генерировать всё заново, отдаст копию (кеш), хранящуюся в оперативной памяти. Логично, что чем больше нагрузка на сайт, тем больше пользы от Memcached. В итоге, используя кеширующий сервер, мы одним выстрелом убиваем сразу двух зайцев:

  1. Ускоряем загрузку страниц
  2. Уменьшаем нагрузку на хостинг
Читайте также:  Blocks app mac os

На что стоит обратить внимание

Не секрет, что чем быстрее загружаются страницы сайта, тем лучше. Так вот, если у вас не высоконагруженный проект, то стоит подумать над тем, стоит ли использовать Memcached, ведь на подключение к нему уходит дополнительное время. Подумайте, будет ли это оправданно.
Ещё Memcached плох тем, как бы это ни звучало странно, что он отъедает оперативную память. Допустим, если вы отвели 200Mb под него, то считайте, что 200Mb уже нет на вашем хостинге. Так что, на это тоже стоит обратить внимание.

Чем отличаются Memcached и Memcache

Под Memcached чаще понимают сервер, когда как memcache — это расширение PHP. Хотя, есть и memcached — расширение PHP. Подробнее читайте тут

Установка и настройка Memcached

В следующей статье поговорим о том, как правильно установить и настроить сервер Memcached

Когда не стоит использовать Memcached

Кеширование снижает гибкость приложений, поэтому на начальных этапах развития проекта не нужно уделять этому слишком много внимания. Не забывайте о правильном подходе, а именно, про использование функций и классов при работе с данными, создание обёрток при работе с внешним API. Оставляйте возможность быстрого внедрения memcached или иного кеширующего метода в код.

Источник

linux-notes.org

Очередная статья на тему «Работа с memcached в Unix/Linux» и я в ней расскажу как работать с memcached в ОС Unix/Linux и приведу наглядные примеры.

Установка memcached в Unix/Linux

Вот статья как установить memcached, можно прочитать:

Возможно, приведу пример подробной настройке ( но попозже).

Работа с memcached в Unix/Linux

Приведу наглядные примеры по работе с memcached.

Получить ( Показать) статус memcached.

Вот простой «top» эмулятор для memcached:

PS: Я использую локальную машину ( локалхост, 127.0.0.1), если вы хотите подключатся к удаленной машине, то замените ИП. Так же, не забываем сменить порт ( если настроили по другому).

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

    stats items — показывает информацию о количестве элементов в каждой плите (slab) со включающей нумерацией времени ( элементы, которые были очищены, прежде чем они истекли (inserted) или элементы не смогли быть вставлены потому, что slab вышел за пределы памяти (out of memory):
    Для начала подключимся:

Читайте также:  Windows 10 до какого числа можно обновить

После чего смотрим статистику:

stats slabs — покажет более детальную статистику по каждому slab, такие как количество страниц (которые были выделены) и процент имеющихся кусков, которые используются:

  • Если вы заинтересованы в просмотре отдельных ключей, которые хранятся на сервере, вы можете использовать команду — stats cachedump чтобы получить список ключей в каждой плите (slab). Команда принимает два аргумента: идентификатор slab и количество элементов для извлечения (0 = извлечь все):
    • Для просмотра item-ов:

    Для тех у кого нет nc, но есть php:

    Очистить ( сбросить) memcached кеш

    Вы можете очистить все существующие элементы кэша с помощью команды flush_all. Вы можете отправить flush_all команду, используя nc или netcat утилиты:

    Или можно еще одним способом:

    • 192.168.1.10 или localhost– сервер где установлен memcached
    • 11211 – порт который использует memcached.

    Сейчас я расскажу как можно сбросить кэш с помощью telnet:

    Статья «Работа с memcached в Unix/Linux» завершена.

    Добавить комментарий Отменить ответ

    Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

    Источник

    Что такое memcached и для чего он нужен

    Memcached (читается мемкЭшид) — это система кэширования различных объектов в оперативной памяти. Позволят значительно снизить нагрузку на базу или файловую систему и ускорить работу сайта, за счет того, что работа с памятью быстрее чем с базой или файлами. Насколько я помню была разработана для LJ, а сейчас применяется практически на всех проектах с большим количеством пользователей. Запускается отдельным сервером.

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

    Для PHP есть специальный PECL-модуль (то есть он не поставляется вместе с PHP, надо отдельно скачивать и компилировать). Думаю также есть готовые модули для Perl, Python (Django), Ruby(RoR) и других языков.

    В API самого мемкеша есть только базовые функции: выбор сервера, коннект и дисконект, добавление, удаление, обновление и получение объекта, инкримент и дикримент. Для каждого объекта устанвливается время жизни, от 1 секунды до бесконечности. При переполнение памяти более старые объекты автоматически удаляются. Для PHP также есть уже готовые библиотеки для работы с мемкешем, которые дают дополнительную функциональность.

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

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

    Сейчас на одном из своих проектов (сайт знакомств) я пробую использовать мемкеш для реализации показа статуса пользователя он- или оффлайн..

    Читайте также:  Windows security client oobe

    Источник

    linux-notes.org

    Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)

    Memcached — это система которая кеширует все данные в память. Это означает, что вы можете генерировать кэш самым быстрым способом что позволит быстрее использовать приложения с самыми современными языками программирования, таких как Python, PHP, Ruby, и т.д. В своей теме «Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)» я расскажу как можно установить memcached на Unix/Linux и на готовом примере, покажу как я это делал. Для тестирования, я выбрал CentOS 6 и Debian 8.

    Установка memcached в Debian/Ubuntu

    Во-первых, я рекомендую обновить систему:

    Теперь используйте следующую команду для установки Memcached:

    Теперь я установлю PHP с несколькими необходимыми пакетами:

    Также необходимо установить модуль MemCache для PHP:

    Наконец выполняем установку расширения Memcache php с помощью PECL:

    Теперь включим поддержку MemCache в PHP. Прежде чем создавать новый файл просто убедитесь, возможно он уже существует и если файл уже существует просто пропустите команду что ниже:

    После всех изменений, производим перезапуск службы Apache:

    Установка memcached в RedHat/CentOS/Fedora

    Для начала, обновим ОС:

    После обновления, выполняем установку memcached:

    Настройка memcached

    Убедитесь, что в данном файле конфигурации имеются следующие строки:

    PORT 11211 является портом прослушивания по умолчанию для Memcached.
    USER — это пользователь memcached от которого будет запущен демон.
    MAXCONN — максимальные количество возможных соединений.
    CACHESIZE — это количество мегабайт (64 MB) для использования, если у вас есть много трафика, это хорошо для большинства малых/средних сайтов. Для загруженного сервера вы можете увеличить его на 512 или 1 Гб (1024 MB).
    OPTIONS=»-l 127.0.0.1″ — это означает что memcached будет слушать только на localhost-е, избегая каких-либо внешних подключений. Вы можете установить IP-адрес сервера. По умолчанию он установлен в INADDR_ANY. Это важно опция, поскольку нет никакого другого способа обеспечить установку. Привязка к внутреннему или межсетевому интерфейсу предлагается.

    Для CentOS/RHEL 6/5:

    запуск Memcached выполняется:

    Пропишем memcached в загрузку ОС:

    Для CentOS/RHEL 7:

    Устновка PHP расширений с Memcached.

    Если PECL при установке задаст вам вопрос, который вы видите ниже, просто нажмите ENTER:

    У меня возникла ошибка:

    Добавим модуль memcache.so module в php.ini

    Перезапускаем службы.

    Если на вашем сервере установлен php-fpm, то чтобы перезапустить его, выполните:

    Если на вашем сервере установлен apache, то чтобы перезапустить его, выполните:

    Для CentOS/RHEL 7:

    Для CentOS/RHEL 6/5:

    Тестирование/проверка работы Memcached

    Проверка настройки MemCache

    Использование следующую команду, чтобы проверить и убедиться, что Memcached служба работает нормально:

    Теперь нужно проверить, включено ли расширение и удостоверимся что работает правильно. Создайте файл в домашнем каталоге и пропишите следующий ПХП код:

    Если открыть сайт, то увидим:

    Проверьте, установлен ли Memcached как модуль PHP:

    Настройка фаэрвола для Memcached

    Добавьте слудеющие правила для разрешения соедения (для работы memcached):

    Проверяем, запущен ли демон memcached на ОС:

    На этом, статья «Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)» завершена.

    Добавить комментарий Отменить ответ

    Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

    Источник

    Оцените статью