2011-09-16 4 views
6

서버 구성을 (init.d 파일에서) supervisord로 마이그레이션하고 있습니다.supervisord로 ulimit를 구성하는 방법 (바니시 시작)

varish 실행 중 일부 인스턴스가 있습니다. 내가

ulimit를 -n $있는 init.d/니스 스크립트에 다음 행이 그래서 내가 ulimit를 문제가 있었다 니스 사용하기 시작했을 때 나는 기억 {NFILES을 : -131072} ulimit를 -l $ {memlock을 : -82000}

인수를 사용하여/usr/sbin/varnishd 프로그램을 실행하도록 supervisord를 구성합니다.

수퍼바이저를 통해 ulimit 설정을 구성하는 방법은 무엇입니까? 스크립트에서 바니시 (varnishd) 프로그램을 그냥 포장합니까?

+1

BTW 현재 나는이 스크립트를 사용하고 (/ usr/지방/빈/varnishd를) #!/bin/sh ulimit -n $ {NFILES : -131072} ulimit -l $ {MEMLOCK : -82000} exec/usr/sbin/varnishd $ @ –

답변

0

이 경로를 실제로 사용해야하는 경우 시스템 수준에서 ulimit을 설정하는 것이 좋습니다 (limits.conf 참조). 그러나 광택은 파일 백엔드가 아닌 malloc 백엔드에서 가장 잘 수행되므로 메모리 리소스가 있으면 ulimit 문제가 해결되고 성능이 향상됩니다. documentation is here하지만, 기본적으로 당신은 당신의/etc/기본/니스에서 "-s의 malloc, 1G"같은 있습니다

DAEMON_OPTS="-a :80 \ 
     -T localhost:1234 \ 
     -f /etc/varnish/default.vcl \ 
     -s malloc,1G"