TMPFS and nginx

Igor Sysoev igor на sysoev.ru
Пт Окт 8 12:03:24 MSD 2010


On Fri, Oct 08, 2010 at 08:59:05AM +0300, Elifan wrote:

> Всем доброе утро!
> 
> Уже     не     нескольких    серверах    с    freebsd   7.3-RELEASE-p2
> (nginx/0.7.67)  возникает некоторая непонятка с tmpfs в памяти.
> 
> Использую кеш fastcgi и т.к. запросов много, выношу fastcgi_temp_path и
> fastcgi_cache_path в tmpfs.
> 
> Работает  нормально,  но некоторые пользователи жалуются на крякозябры
> на  страницах,  вроде  как  в  файлах  кеша  они и вписаны, т.к. после
> очистки кеша или его отключения, ситуация нормалиизуется.
> 
> Пробывал монтировать по разному:
> /sbin/mount -t tmpfs -osize=256M /dev/shm  /tmp/nginx
> /sbin/mount -t tmpfs -osize=256M /dev/shm2 /tmp/nginx
> ситуация повторяется.
> 
> При этом вынос каталога mysql в память никогда проблем не вызывал:
> /sbin/mount -t tmpfs -osize=512M /dev/shm1 /var/tmp
> 
> Это  глюк  с  FreeBSD,  типа  может  использовать  только  одну  такую
> замонтированную папку, либо так накладывается при работе nginx?

Как уже написали, это ошибка в sendfile/tmpfs:
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/127213
Его нужно выключить для location'а, где используется кэш.

Параметры /dev/shmX для FreeBSD не имеет никакого смысла - там и
устройств-то таких нет. Этот параметр - просто заглушка.

Что касается размещения кэша в md/tmpfs - это имеет смысл, только если
в кэш делается много записей (а не чтений). В противном случае это
просто разбазаривание памяти.


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru