Страницы

Сохранить статью у себя в соцсети:

воскресенье, 5 августа 2012 г.

§ Pgpool2: memory caching.

Настройка кэширования в памяти для pgpool2.

Как известно в pgpool2 есть возможность кэшировать результаты запросов. Существует возможность кэширования данных в таблицах postgresql. В релиз-кандидатах pgpool2-3.2 появилась возможность кэширования результатов запросов в память. Местом хранения в зависимости от настройки может служить разделяемая память или memcached.
Для реализации схемы с возможностью кэширования необходимо установить memcached, libmemcached и pgpool2 от версии 3.2. Также следует убедиться что pgpool2 собран с поддержкой memcached. Если выполнять установку из исходных кодов, при конфигурации скрипту configure нужно передать информацию о размещении заголовочных файлов libmemcached
# wget http://www.pgpool.net/mediawiki/images/pgpool-II-3.2RC1.tar.gz
# tar xvzf pgpool-II-3.2RC1.tar.gz
# cd pgpool-II-3.2RC1
# ./configure --with-memcached=/usr/include/libmemcached
# make && make install

Затем конфигурируем pgpool2. 
# vi /etc/pgpool2/pgpool.conf
#------------------------------------------------------------------------------
# ON MEMORY QUERY MEMORY CACHE
#------------------------------------------------------------------------------
memory_cache_enabled = on
memqcache_method = 'memcached'
memqcache_memcached_host = '127.0.0.1'
memqcache_memcached_port = 11211
memqcache_total_size = 536870912
memqcache_max_num_cache = 10000000
memqcache_expire = 1800
memqcache_auto_cache_invalidation = on
memqcache_maxcache = 409600
memqcache_cache_block_size = 1048576
memqcache_oiddir = '/var/lib/pgpool2/oiddir'
white_memqcache_table_list = ''
black_memqcache_table_list = ''

В данном примере в качестве кэша используется локально установленный memcached. Чтобы переключиться на использование кэша в разделяемой памяти, следует поменять параметр memqcache_method = 'shmem'. Следует отметить, что в таком случае нужно определить подходящее значение для kernel.shmmax, чтобы pgpool2 мог запуститься.
# echo "kernel.shmmax = 536870912" >> /etc/sysctl.conf
# sysctl -p

Вот таким образом настраивается кэширование результатов запросов в Pgpool2.

На главную "Virtualizing Linux"

Комментариев нет:

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

Популярные сообщения

Профиль в Google+ Яндекс цитирования Яндекс.Метрика