Englishํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

echo_supervisord_conf - ํด๋ผ์šฐ๋“œ์—์„œ์˜ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ echo_supervisord_conf๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” echo_supervisord_conf ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


echo_supervisord_conf - ๊ฐ๋…์ž ๊ตฌ์„ฑ ๋ฌธ์„œ

Supervisor๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ฒˆํ˜ธ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ผ์ด์–ธํŠธ/์„œ๋ฒ„ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค.
UNIX ๊ณ„์—ด ์šด์˜ ์ฒด์ œ์˜ ํ”„๋กœ์„ธ์Šค

launchd, daemontools ๋ฐ runit๊ณผ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์˜ ๋™์ผํ•œ ๋ชฉํ‘œ ์ค‘ ์ผ๋ถ€๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ™์ง€ ์•Š์€
์ด๋Ÿฌํ•œ ํ”„๋กœ๊ทธ๋žจ ์ค‘ ์ผ๋ถ€๋Š” INIT "ํ”„๋กœ์„ธ์Šค ID๋กœ
1". ๋Œ€์‹  ํ”„๋กœ์ ํŠธ ๋˜๋Š” ํ”„๋กœ์ ํŠธ์™€ ๊ด€๋ จ๋œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ์–ดํ•˜๋Š” โ€‹โ€‹๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
๊ณ ๊ฐ์ด๋ฉฐ ๋ถ€ํŒ… ์‹œ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‹œ์ž‘ํ•˜๋„๋ก ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์„ค๋ช…์„œ


๋งŒ๋“ค๊ธฐ a ๊ตฌ์„ฑ ์ž…์–‘ ๋ถ€๋ชจ๋กœ์„œ์˜ ๊ท€ํ•˜์˜ ์ ํ•ฉ์„ฑ์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์—
Supervisor ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค. echo_supervisord_conf. ์ด๊ฒƒ์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค
"์ƒ˜ํ”Œ" ๊ฐ๋…์ž ๊ตฌ์„ฑ ํŒŒ์ผ์„ ํ„ฐ๋ฏธ๋„์˜ ํ‘œ์ค€ ์ถœ๋ ฅ์œผ๋กœ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

ํŒŒ์ผ์ด ํ„ฐ๋ฏธ๋„์— ์—์ฝ”๋˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ช…๋ น์„ ๋‹ค์‹œ ํ˜ธ์ถœํ•˜์‹ญ์‹œ์˜ค.
echo_supervisord_conf > /etc/supervisord.conf. ๋ฃจํŠธ๊ฐ€ ์—†์œผ๋ฉด ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฃจํŠธ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†๊ฑฐ๋‚˜ ๊ฐ๋…์ž.conf ์—์žˆ๋Š” ํŒŒ์ผ์„
/etc/supervisord.conf`, ํ˜„์žฌ ๋””๋ ‰ํ„ฐ๋ฆฌ(echo_supervisord_conf >
๊ฐ๋…์ž.conf) ์‹œ์ž‘ ๊ฐ๋…์ž ์™€ ๋”๋ถˆ์–ด -c ํ”Œ๋ž˜๊ทธ๋ฅผ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด
๊ตฌ์„ฑ ํŒŒ์ผ ์œ„์น˜.

์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐ๋…์ž -c ๊ฐ๋…์ž.conf. ์‚ฌ์šฉ -c ํ”Œ๋ž˜๊ทธ๋Š” ์‹ค์ œ๋กœ ์ค‘๋ณต๋ฉ๋‹ˆ๋‹ค.
์ด ๊ฒฝ์šฐ ๋•Œ๋ฌธ์— ๊ฐ๋…์ž ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ๋‹ค์Œ์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž.conf
ํŒŒ์ผ์˜ ๋‹ค๋ฅธ ์œ„์น˜๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์ „์— ์ž‘๋™ํ•˜์ง€๋งŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

ํŒŒ์ผ ์‹œ์Šคํ…œ์— ๊ตฌ์„ฑ ํŒŒ์ผ์ด ์žˆ์œผ๋ฉด ์ด๋ฅผ ์›ํ•˜๋Š” ๋Œ€๋กœ ์ˆ˜์ •ํ•˜๊ธฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ธฐํ˜ธ.

๊ตฌ์„ฑ ์ž…์–‘ ๋ถ€๋ชจ๋กœ์„œ์˜ ๊ท€ํ•˜์˜ ์ ํ•ฉ์„ฑ์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์—
Supervisor ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ์ด๋ฆ„์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐ๋…์ž.conf. ๊ทธ๊ฒƒ์€์— ์˜ํ•ด ์‚ฌ์šฉ
๋‘ ๊ฐ๋…์ž and ๊ฐ๋…์žctl. ๋‘ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์—†์ด ์‹œ์ž‘๋˜๋Š” ๊ฒฝ์šฐ -c
์˜ต์…˜(์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์— ๊ตฌ์„ฑ ํŒŒ์ผ ์ด๋ฆ„์„ ์•Œ๋ ค์ฃผ๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์˜ต์…˜
๋ช…์‹œ์ ์œผ๋กœ), ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŒŒ์ผ์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…์ž.conf ์ด๋‚ด
๋‹ค์Œ ์œ„์น˜์—์„œ ์ง€์ •๋œ ์ˆœ์„œ๋Œ€๋กœ. ์ฐพ์€ ์ฒซ ๋ฒˆ์งธ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

1. $CWD/supervisord.conf

2. $CWD/etc/supervisord.conf

3. /etc/supervisord.conf

4. ../etc/supervisord.conf (์‹คํ–‰ ํŒŒ์ผ์— ์ƒ๋Œ€์ )

5. ../supervisord.conf (์‹คํ–‰ ํŒŒ์ผ์— ์ƒ๋Œ€์ )

์•Œ๋ฆผ:
์ผ๋ถ€ ๋ฐฐํฌํŒ์—๋Š” ์ž์ฒด ์‚ฌ์šฉ์ž ์ •์˜๊ฐ€ ํฌํ•จ๋œ Supervisor ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ๋“ค
์ˆ˜์ •๋œ ๋ฒ„์ „์˜ Supervisor๋Š” ๋‹ค๋ฅธ ์œ„์น˜์—์„œ ๊ตฌ์„ฑ ํŒŒ์ผ์„ ๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์— ์„ค๋ช…๋œ ๊ฒƒ๋ณด๋‹ค ํŠนํžˆ, ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜๋Š” Ubuntu ํŒจํ‚ค์ง€๊ฐ€ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
/etc/supervisor/supervisord.conf.

์ž…์–‘ ๋ถ€๋ชจ๋กœ์„œ์˜ ๊ท€ํ•˜์˜ ์ ํ•ฉ์„ฑ์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ฏธ๊ตญ ์ด๋ฏผ๊ตญ์— ํ˜•์„ฑ
๊ฐ๋…์ž.conf Windows-INI ์Šคํƒ€์ผ(Python ConfigParser) ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ์„น์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค(๊ฐ๊ฐ
๋กœ ํ‘œ์‹œ [ํ—ค๋”]) ๋ฐ ์„น์…˜ ๋‚ด์˜ ํ‚ค/๊ฐ’ ์Œ. ์„น์…˜ ๋ฐ ํ•ด๋‹น
ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฐ’์€ ์•„๋ž˜์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ ๋ณ€์ˆ˜
๋‹น์‹œ ํ™˜๊ฒฝ์— ์กด์žฌํ•˜๋Š” ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๊ฐ๋…์ž is
์‹œ์ž‘์€ Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹ ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์„ฑ ํŒŒ์ผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
%(ENV_X)s:

[ํ”„๋กœ๊ทธ๋žจ:์˜ˆ์‹œ]
๋ช…๋ น=/usr/bin/example --loglevel=%(ENV_LOGLEVEL)s

์œ„์˜ ์˜ˆ์—์„œ ํ‘œํ˜„์‹ %(ENV_LOGLEVEL)s ์˜ ๊ฐ’์œผ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.
ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๋กœ๊ทธ๋ ˆ๋ฒจ.

์•Œ๋ฆผ:
Supervisor 3.2 ์ด์ƒ์—์„œ๋Š” %(ENV_X)s ํ‘œํ˜„์‹์€ ๋ชจ๋“  ์˜ต์…˜์—์„œ ์ง€์›๋ฉ๋‹ˆ๋‹ค. ์—
์ด์ „ ๋ฒ„์ „์—์„œ๋Š” ์ผ๋ถ€ ์˜ต์…˜์ด ์ง€์›ํ•˜์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์€ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
์•„๋ž˜์˜ ๊ฐ ์˜ต์…˜.

[์œ ๋‹‰์Šค_http_์„œ๋ฒ„] ์„น์…˜ ์„ค์ •
์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฐ๋…์ž.conf ํŒŒ์ผ์— ๋ผ๋Š” ์„น์…˜์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. [์œ ๋‹‰์Šค_http_์„œ๋ฒ„] ๋ฐ‘์—
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” HTTP ์„œ๋ฒ„์— ๋Œ€ํ•œ ๊ตฌ์„ฑ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์‚ฝ์ž…. ๊ตฌ์„ฑ ํŒŒ์ผ์— ์—†๋Š” ๊ฒฝ์šฐ [์œ ๋‹‰์Šค_http_์„œ๋ฒ„] ์„น์…˜, UNIX ๋„๋ฉ”์ธ
์†Œ์ผ“ HTTP ์„œ๋ฒ„๊ฐ€ ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ—ˆ์šฉ๋˜๋Š” ๊ตฌ์„ฑ ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

[์œ ๋‹‰์Šค_http_์„œ๋ฒ„] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
ํŒŒ์ผ
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์— ๋Œ€ํ•œ ๊ฒฝ๋กœ(์˜ˆ: /tmp/supervisord.sock) ๊ฐ๋…์€
HTTP/XML-RPC ์š”์ฒญ์„ ์ˆ˜์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์žctl XML-RPC๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ†ต์‹ 
๊ฐ๋…์ž ์ด ํฌํŠธ๋ฅผ ํ†ตํ•ด. ์ด ์˜ต์…˜์—๋Š” ๊ฐ’์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. %(์—ฌ๊ธฐ)s, ํ™•์žฅ
๊ฐ€ ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๊ฐ๋…์ž ๊ตฌ์„ฑ ํŒŒ์ผ์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์—†์Œ.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

chmod๋ฅผ
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์˜ UNIX ๊ถŒํ•œ ๋ชจ๋“œ ๋น„ํŠธ๋ฅผ ๋‹ค์Œ ์œ„์น˜์—์„œ ์ด ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
์‹œ์ž‘.

ํƒœ๋งŒ: 0700

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

chownํ•˜์ง€
์†Œ์ผ“ ํŒŒ์ผ์˜ ์‚ฌ์šฉ์ž ๋ฐ ๊ทธ๋ฃน์„ ์ด ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. UNIX ์‚ฌ์šฉ์ž ์ด๋ฆ„์ผ ์ˆ˜ ์žˆ์Œ
(์˜ˆ : ์„ฑ์œ ) ๋˜๋Š” ์ฝœ๋ก ์œผ๋กœ ๊ตฌ๋ถ„๋œ UNIX ์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋ฐ ๊ทธ๋ฃน(์˜ˆ: ํฌ๋ฆฌ์Šค:ํœ ).

ํƒœ๋งŒ: Supervisord๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ์‚ฌ์šฉ์ž์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‚ฌ์šฉ์ž ์ด๋ฆ„
์ด HTTP ์„œ๋ฒ„์— ๋Œ€ํ•œ ์ธ์ฆ์— ํ•„์š”ํ•œ ์‚ฌ์šฉ์ž ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์‚ฌ์šฉ์ž ์ด๋ฆ„์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์•”ํ˜ธ
์ด HTTP ์„œ๋ฒ„์— ๋Œ€ํ•œ ์ธ์ฆ์— ํ•„์š”ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ผ๋ฐ˜ ํ…์ŠคํŠธ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋น„๋ฐ€๋ฒˆํ˜ธ ๋˜๋Š” ๋ฌธ์ž์—ด์ด ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ SHA-1 ํ•ด์‹œ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. {์ƒค}. ์šฉ
์˜ˆ, {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d SHA์— ์ €์žฅ๋œ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.
๋น„๋ฐ€๋ฒˆํ˜ธ "๋น„๋ฐ€๋ฒˆํ˜ธ".

ํ•ด์‹œ๋œ ์•”ํ˜ธ๋Š” XNUMX์ง„์ˆ˜ ํ˜•์‹์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[์œ ๋‹‰์Šค_http_์„œ๋ฒ„] ์„น์…˜ ์˜ˆ์‹œ
[์œ ๋‹‰์Šค_http_์„œ๋ฒ„]
ํŒŒ์ผ = /tmp/supervisor.sock
์ฑ„๋„ ๋ชจ๋“œ = 0777
chown=์•„๋ฌด๋„ ์—†์Œ:๊ทธ๋ฃน ์—†์Œ
์‚ฌ์šฉ์ž ์ด๋ฆ„ = ์‚ฌ์šฉ์ž
๋น„๋ฐ€๋ฒˆํ˜ธ = 123

[inet_http_์„œ๋ฒ„] ์„น์…˜ ์„ค์ •
์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฐ๋…์ž.conf ํŒŒ์ผ์— ๋ผ๋Š” ์„น์…˜์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. [inet_http_์„œ๋ฒ„] ๋ฐ‘์—
TCP(์ธํ„ฐ๋„ท) ์†Œ์ผ“์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” HTTP ์„œ๋ฒ„์˜ ๊ตฌ์„ฑ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š”
์‚ฝ์ž…๋ฉ๋‹ˆ๋‹ค. ๊ตฌ์„ฑ ํŒŒ์ผ์— ์—†๋Š” ๊ฒฝ์šฐ [inet_http_์„œ๋ฒ„] ์„น์…˜, inet HTTP
์„œ๋ฒ„๊ฐ€ ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ—ˆ์šฉ๋˜๋Š” ๊ตฌ์„ฑ ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

[inet_http_์„œ๋ฒ„] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
ํฌํŠธ
TCP ํ˜ธ์ŠคํŠธ:ํฌํŠธ ๊ฐ’ ๋˜๋Š” (์˜ˆ: 127.0.0.1:9001) ๊ฐ๋…์ด ๋“ค์„ ๊ฒƒ
HTTP/XML-RPC ์š”์ฒญ. ๊ฐ๋…์žctl XML-RPC๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ๋…์ž
์ด ํฌํŠธ๋ฅผ ํ†ตํ•ด. ๋จธ์‹ ์˜ ๋ชจ๋“  ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. : 9001 or *:9001.

ํƒœ๋งŒ: ๊ธฐ๋ณธ๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์˜ˆ.

๋„์ž…: 3.0

์‚ฌ์šฉ์ž ์ด๋ฆ„
์ด HTTP ์„œ๋ฒ„์— ๋Œ€ํ•œ ์ธ์ฆ์— ํ•„์š”ํ•œ ์‚ฌ์šฉ์ž ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์‚ฌ์šฉ์ž ์ด๋ฆ„์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์•”ํ˜ธ
์ด HTTP ์„œ๋ฒ„์— ๋Œ€ํ•œ ์ธ์ฆ์— ํ•„์š”ํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ผ๋ฐ˜ ํ…์ŠคํŠธ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋น„๋ฐ€๋ฒˆํ˜ธ ๋˜๋Š” ๋ฌธ์ž์—ด์ด ์ ‘๋‘์–ด์ธ ๊ฒฝ์šฐ SHA-1 ํ•ด์‹œ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. {์ƒค}. ์šฉ
์˜ˆ, {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d SHA์— ์ €์žฅ๋œ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค.
๋น„๋ฐ€๋ฒˆํ˜ธ "๋น„๋ฐ€๋ฒˆํ˜ธ".

ํ•ด์‹œ๋œ ์•”ํ˜ธ๋Š” XNUMX์ง„์ˆ˜ ํ˜•์‹์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[inet_http_์„œ๋ฒ„] ์„น์…˜ ์˜ˆ์‹œ
[inet_http_์„œ๋ฒ„]
ํฌํŠธ = 127.0.0.1:9001
์‚ฌ์šฉ์ž ์ด๋ฆ„ = ์‚ฌ์šฉ์ž
๋น„๋ฐ€๋ฒˆํ˜ธ = 123

[๊ฐ๋…๊ด€] ์„น์…˜ ์„ค์ •
์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฐ๋…์ž.conf ํŒŒ์ผ์— ๋ผ๋Š” ์„น์…˜์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. [๊ฐ๋…๊ด€] ์–ด๋–ค ์ „์—ญ ์„ค์ •์—์„œ
๊ทธ์™€ ๊ด€๋ จ๋œ ๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฝ์ž…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋“ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

[๊ฐ๋…๊ด€] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
๋กœ๊ทธ ํŒŒ์ผ
Supervisord ํ”„๋กœ์„ธ์Šค์˜ ํ™œ๋™ ๋กœ๊ทธ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ€์น˜ %(์—ฌ๊ธฐ)s, ์ด๋Š” Supervisord ๊ตฌ์„ฑ์ด ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: $CWD/supervisord.log

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

logfile_maxbytes
ํ™œ๋™ ๋กœ๊ทธ ํŒŒ์ผ์ด ์‚ฌ์šฉ๋˜๊ธฐ ์ „์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๋ฐ”์ดํŠธ ์ˆ˜
ํšŒ์ „๋จ("KB", "MB" ๋ฐ "GB"์™€ ๊ฐ™์€ ์ ‘๋ฏธ์‚ฌ ์Šน์ˆ˜๋ฅผ ๊ฐ’์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ). ์„ธํŠธ
๋ฌด์ œํ•œ ๋กœ๊ทธ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด ์ด ๊ฐ’์„ 0์œผ๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 50MB

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋กœ๊ทธ ํŒŒ์ผ_๋ฐฑ์—…
ํ™œ๋™ ๋กœ๊ทธ ํŒŒ์ผ ํšŒ์ „์œผ๋กœ ์ธํ•ด ๋ณด๊ด€ํ•  ๋ฐฑ์—… ์ˆ˜์ž…๋‹ˆ๋‹ค. ์„ค์ •๋œ ๊ฒฝ์šฐ
0์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ฐฑ์—…์ด ์œ ์ง€๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 10

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋กœ๊ทธ ๋ ˆ๋ฒจ
Supervisord ํ™œ๋™ ๋กœ๊ทธ์— ๊ธฐ๋ก๋˜๋Š” ๋‚ด์šฉ์„ ์ง€์‹œํ•˜๋Š” ๋กœ๊น… ์ˆ˜์ค€. ์ค‘ ํ•˜๋‚˜
์ž„๊ณ„, ์˜ค๋ฅ˜, ๊ฒฝ๊ณ , ์ •๋ณด, ๋””๋ฒ„๊ทธ, ๋”๋“ฌ๋‹ค๋ฐ ๋ธ”๋ž˜๋”. ๋กœ๊ทธ ์ˆ˜์ค€์—์„œ ๋””๋ฒ„๊ทธ,
Supervisord ๋กœ๊ทธ ํŒŒ์ผ์€ ์ž์‹ ํ”„๋กœ์„ธ์Šค์˜ stderr/stdout ์ถœ๋ ฅ์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
๋ฐ ๋””๋ฒ„๊น…์— ์œ ์šฉํ•œ ํ”„๋กœ์„ธ์Šค ์ƒํƒœ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ํ™•์žฅ๋œ ์ •๋ณด ์ •๋ณด
์ œ๋Œ€๋กœ ์‹œ์ž‘๋˜์ง€ ์•Š๋Š” ํ”„๋กœ์„ธ์Šค. ์ฐธ์กฐ: activity_log_levels.

ํƒœ๋งŒ: ์ •๋ณด

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

PID ํŒŒ์ผ
Supervisord๊ฐ€ pid ํŒŒ์ผ์„ ๋ณด๊ด€ํ•˜๋Š” ์œ„์น˜์ž…๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ€์น˜ %(์—ฌ๊ธฐ)s, ์ด๋Š” Supervisord ๊ตฌ์„ฑ์ด ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: $CWD/supervisord.pid

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋งˆ์Šคํฌ
๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค์˜ umask์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 022

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋…ธ๋ฐ๋ชฌ
true์ธ ๊ฒฝ์šฐ supervisord๋Š” ๋ฐ๋ชฌํ™”ํ•˜๋Š” ๋Œ€์‹  ํฌ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋ฏผํ”„
์ˆ˜ํผ๋ฐ”์ด์ €๊ฐ€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ด์•ผ ํ•˜๋Š” ์ตœ์†Œ ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ ์ˆ˜
์„ฑ๊ณต์ ์œผ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. setrlimit์— ๋Œ€ํ•œ ํ˜ธ์ถœ์€ ์†Œํ”„ํŠธ ๋ฐ
์ถฉ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๊ฐ๋… ํ”„๋กœ์„ธ์Šค์˜ ์—„๊ฒฉํ•œ ํ•œ๊ณ„ ๋ฏผํ”„. ํ•˜๋“œ ํ•œ๋„๋Š”
Supervisord๊ฐ€ ๋ฃจํŠธ๋กœ ์‹คํ–‰๋˜๋ฉด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. Supervisord๋Š” ํŒŒ์ผ ์„ค๋ช…์ž๋ฅผ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•˜๊ณ ,
OS์—์„œ ์–ป์„ ์ˆ˜ ์—†์„ ๋•Œ ์‹คํŒจ ๋ชจ๋“œ๋กœ ๋“ค์–ด๊ฐ€๋ฏ€๋กœ ๋‹ค์Œ์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
์‹คํ–‰ ์ค‘์— ๋ถ€์กฑํ•˜์ง€ ์•Š๋„๋ก ์ตœ์†Œ๊ฐ’์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์˜ต์…˜์€ ํ”„๋กœ์„ธ์Šค๋‹น fd ์ œํ•œ์ด ๋‚ฎ์€ Solaris์—์„œ ํŠนํžˆ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
ํƒœ๋งŒ.

ํƒœ๋งŒ: 1024

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ตœ์†Œํ”„๋กœ์‹œ์ €
๊ฐ๋… ์ „์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค ์„ค๋ช…์ž์˜ ์ตœ์†Œ ์ˆ˜
์„ฑ๊ณต์ ์œผ๋กœ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด setrlimit์— ๋Œ€ํ•œ ํ˜ธ์ถœ์ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.
์ถฉ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๊ฐ๋… ํ”„๋กœ์„ธ์Šค์˜ ์—„๊ฒฉํ•œ ํ•œ๊ณ„ ์ตœ์†Œํ”„๋กœ์‹œ์ €. ํ•˜๋“œ ํ•œ๋„๋Š”
Supervisord๊ฐ€ ๋ฃจํŠธ๋กœ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž๋Š” ์‹คํŒจ ๋ชจ๋“œ์— ๋“ค์–ด๊ฐˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค
OS์— ํ”„๋กœ์„ธ์Šค ์„ค๋ช…์ž๊ฐ€ ๋ถ€์กฑํ•  ๋•Œ
ํ”„๋กœ์„ธ์Šค ์„ค๋ช…์ž๋Š” ๋‹ค์Œ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…์ž ์‹œ์ž‘.

ํƒœ๋งŒ: 200

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ •๋ฆฌ ์—†์Œ
๊ฐ๋…์ž๊ฐ€ ๊ธฐ์กด ํ•ญ๋ชฉ์„ ์ง€์šฐ์ง€ ๋ชปํ•˜๋„๋ก ๋ฐฉ์ง€ AUTO ์‹œ์ž‘ ์‹œ ์ž์‹ ๋กœ๊ทธ ํŒŒ์ผ.
๋””๋ฒ„๊น…์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ž์‹ ๋กœ๊ทธ ๋””๋ ‰ํ† ๋ฆฌ
์— ์‚ฌ์šฉ๋œ ๋””๋ ‰ํ† ๋ฆฌ AUTO ์ž์‹ ๋กœ๊ทธ ํŒŒ์ผ. ์ด ์˜ต์…˜์—๋Š” ๊ฐ’์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
%(์—ฌ๊ธฐ)s, ์ด๋Š” ๋‹ค์Œ์ด ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž ๊ตฌ์„ฑ ํŒŒ์ผ
๋ฐœ๊ฒฌ.

ํƒœ๋งŒ: ํŒŒ์ด์ฌ์˜ ๊ฐ’ ์ž„์‹œํŒŒ์ผ.get_tempdir()

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‚ฌ์šฉ์ž
์ง€์‹œ ๊ฐ๋…์ž ์–ด๋–ค ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์ „์— ์‚ฌ์šฉ์ž๋ฅผ ์ด UNIX ์‚ฌ์šฉ์ž ๊ณ„์ •์œผ๋กœ ์ „ํ™˜ํ•˜๋ ค๋ฉด
์˜๋ฏธ์žˆ๋Š” ์ฒ˜๋ฆฌ. ์‚ฌ์šฉ์ž๋Š” ๋‹ค์Œ ๊ฒฝ์šฐ์—๋งŒ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…์ž ๋กœ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.
๋ฃจํŠธ ์‚ฌ์šฉ์ž. ๋งŒ์•ฝ์— ๊ฐ๋…์ž ์‚ฌ์šฉ์ž๋ฅผ ์ „ํ™˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ณ„์† ์ง„ํ–‰๋˜์ง€๋งŒ ๋‹ค์Œ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
๋กœ๊ทธ ๋ฉ”์‹œ์ง€ ์ž„๊ณ„ ๊ถŒํ•œ์„ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์‚ฌ์šฉ์ž๋ฅผ ์ „ํ™˜ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์˜ˆ๋ฐฐ ๊ทœ์น™์„œ
์ธ์…€๋ค ๊ณต์‹ ํŒ๋งค์ ์ธ ๊ฐ๋…์ž ๋ฐ๋ชฌํ™”ํ•˜๋ฉด ์ด ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ€์น˜ %(์—ฌ๊ธฐ)s, ์ด๋Š” ๋‹ค์Œ์ด ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž ๊ตฌ์„ฑ
ํŒŒ์ผ์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: CDํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ŠคํŠธ๋ฆฝ_์•ˆ์‹œ
์ž์‹ ๋กœ๊ทธ ํŒŒ์ผ์—์„œ ๋ชจ๋“  ANSI ์ด์Šค์ผ€์ดํ”„ ์‹œํ€€์Šค๋ฅผ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

ํ™˜๊ฒฝ
ํ˜•์‹์˜ ํ‚ค/๊ฐ’ ์Œ ๋ชฉ๋ก ํ‚ค = "๋ฐœ", ํ‚ค2 = "๋ฐœ2" ์— ๋ฐฐ์น˜๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค 'ํ™˜๊ฒฝ(๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ชจ๋“  ์ž์‹ ํ”„๋กœ์„ธ์Šค')
ํ™˜๊ฒฝ). ์ด ์˜ต์…˜์—๋Š” ๊ฐ’์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. %(์—ฌ๊ธฐ)s๋กœ ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.
Supervisord ๊ตฌ์„ฑ ํŒŒ์ผ์ด ๋ฐœ๊ฒฌ๋œ ๋””๋ ‰ํ† ๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” ๊ฐ’
์˜์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๋ฌธ์ž๋Š” ๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: ํ‚ค = "๋ฐœ:123", ํ‚ค2 = "๋ฐœ,456").
๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ฐ’์„ ์ธ์šฉํ•˜๋Š” ๊ฒƒ์€ ์„ ํƒ ์‚ฌํ•ญ์ด์ง€๋งŒ ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค. ํผ์„ผํŠธ๋ฅผ ํƒˆ์ถœํ•˜๋ ค๋ฉด
๋ฌธ์ž, ๋‹จ์ˆœํžˆ ๋‘ ๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: URI="/์ฒซ ๋ฒˆ์งธ%%20์ด๋ฆ„") ์ฃผ์˜ ์‚ฌํ•ญ ๊ทธ ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค๋Š”
์‹œ์ž‘ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ์…ธ์˜ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž ์ œ์™ธํ•˜๊ณ 
์—ฌ๊ธฐ์™€ ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ์žฌ์ •์˜๋œ ๊ฒƒ๋“ค ํ™˜๊ฒฝ ์˜ต์…˜. ๋ณด๋‹ค
ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค_ํ™˜๊ฒฝ.

ํƒœ๋งŒ: ๊ฐ’ ์—†์Œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‹๋ณ„์ž
RPC ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ด ๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค์˜ ์‹๋ณ„์ž ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฐ๋…์ž

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[๊ฐ๋…๊ด€] ์„น์…˜ ์˜ˆ์‹œ
[๊ฐ๋…๊ด€]
๋กœ๊ทธ ํŒŒ์ผ = /tmp/supervisord.log
logfile_maxbytes = 50MB
๋กœ๊ทธํŒŒ์ผ_๋ฐฑ์—…=10
๋กœ๊ทธ ๋ ˆ๋ฒจ = ์ •๋ณด
pidfile = /tmp/supervisord.pid
๋…ธ๋ฐ๋ชฌ = ๊ฑฐ์ง“
minfd = 1024
์ตœ์†Œ ํ”„๋กœ์„ธ์Šค = 200
์œ ๋งˆ์Šคํฌ = 022
์‚ฌ์šฉ์ž = ํฌ๋ฆฌ์Šค
์‹๋ณ„์ž = ๊ฐ๋…์ž
๋””๋ ‰ํ† ๋ฆฌ = / TMP
nocleanup = ์‚ฌ์‹ค
์ž์‹ ๋กœ๊ทธ ๋””๋ ‰ํ† ๋ฆฌ = / TMP
strip_ansi = ๊ฑฐ์ง“
ํ™˜๊ฒฝ = KEY1="๊ฐ’1", ํ‚ค2="๊ฐ’2"

[๊ฐ๋…๊ด€] ์„น์…˜ ์„ค์ •
๊ตฌ์„ฑ ํŒŒ์ผ์—๋Š” ์— ๋Œ€ํ•œ ์„ค์ •์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…์žctl ๋Œ€ํ™”์‹ ์…ธ
ํ”„๋กœ๊ทธ๋žจ. ์ด๋Ÿฌํ•œ ์˜ต์…˜์€ ์•„๋ž˜์— ๋‚˜์—ด๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

[๊ฐ๋…๊ด€] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
์„œ๋ฒ„ URL
Supervisord ์„œ๋ฒ„์— ์•ก์„ธ์Šคํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” URL, ์˜ˆ:
http://localhost: 9001. UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์˜ ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
์œ ๋‹‰์Šค:///absolute/path/to/file.sock.

ํƒœ๋งŒ: http://localhost: 9001

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‚ฌ์šฉ์ž ์ด๋ฆ„
์ธ์ฆ์— ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ๋…์ž ์„œ๋ฒ„์— ์ „๋‹ฌํ•  ์‚ฌ์šฉ์ž ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€
๊ฐ™๋‹ค ์‚ฌ์šฉ์ž ์ด๋ฆ„ ํฌํŠธ ๋˜๋Š” UNIX์— ๋Œ€ํ•œ ๊ฐ๋…์ž ์„œ๋ฒ„ ๊ตฌ์„ฑ์—์„œ
์•ก์„ธ์Šคํ•˜๋ ค๋Š” ๋„๋ฉ”์ธ ์†Œ์ผ“.

ํƒœ๋งŒ: ์‚ฌ์šฉ์ž ์ด๋ฆ„ ์—†์Œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์•”ํ˜ธ
์ธ์ฆ์— ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ๋…์ž ์„œ๋ฒ„์— ์ „๋‹ฌํ•  ์•”ํ˜ธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€
์˜ ์ผ๋ฐ˜ ํ…์ŠคํŠธ ๋ฒ„์ „์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•”ํ˜ธ ์— ๋Œ€ํ•œ ๊ฐ๋…์ž ์„œ๋ฒ„ ๊ตฌ์„ฑ์—์„œ
์•ก์„ธ์Šคํ•˜๋ ค๋Š” ํฌํŠธ ๋˜๋Š” UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“. ์ด ๊ฐ’์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ „๋‹ฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
SHA ํ•ด์‹œ. ์ด ํŒŒ์ผ์— ์ง€์ •๋œ ๋‹ค๋ฅธ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ๋‹ฌ๋ฆฌ ๋‹ค์Œ ์œ„์น˜์— ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๋ช…ํ™•ํ•œ ๋ฌธ๊ตฌ.

ํƒœ๋งŒ: ๋น„๋ฐ€๋ฒˆํ˜ธ ์—†์Œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‹ ์†ํ•œ
Supervisorctl ํ”„๋กฌํ”„ํŠธ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฐ๋…์ž

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๊ธฐ๋ก_ํŒŒ์ผ
๋กœ ์‚ฌ์šฉํ•  ๊ฒฝ๋กœ ์ž‘์„ฑํ•œ Readline ์˜๊ตฌ ํžˆ์Šคํ† ๋ฆฌ ํŒŒ์ผ. ์ด ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด
๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•˜๋ฉด supervisorctl ๋ช…๋ น์ด ํŒŒ์ผ์— ๋ณด๊ด€๋˜๋ฉฐ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋งˆ์ง€๋ง‰ supervisorctl์—์„œ ์ˆ˜ํ–‰ํ•œ ๋ช…๋ น์„ ํ˜ธ์ถœํ•˜๋Š” readline(์˜ˆ: ํ™”์‚ดํ‘œ ์œ„๋กœ)
์„ธ์…˜.

ํƒœ๋งŒ: ํŒŒ์ผ ์—†์Œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0a5

[๊ฐ๋…๊ด€] ์„น์…˜ ์˜ˆ์‹œ
[๊ฐ๋…๊ด€]
์„œ๋ฒ„ URL = ์œ ๋‹‰์Šค:///tmp/supervisor.sock
์‚ฌ์šฉ์ž ์ด๋ฆ„ = ํฌ๋ฆฌ์Šค
๋น„๋ฐ€๋ฒˆํ˜ธ = 123
ํ”„๋กฌํ”„ํŠธ = mysupervisor

[ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์„ค์ •
๊ตฌ์„ฑ ํŒŒ์ผ์—๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ํ”„๋กœ๊ทธ๋žจ ๊ฐ๋…์„ ์œ„ํ•œ ์„น์…˜
์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์„ ์‹œ์ž‘ํ•˜๊ณ  ์ œ์–ดํ•ด์•ผ ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ—ค๋” ๊ฐ’์€ ๋ณตํ•ฉ ๊ฐ’์ž…๋‹ˆ๋‹ค.
"ํ”„๋กœ๊ทธ๋žจ"์ด๋ผ๋Š” ๋‹จ์–ด์™€ ์ฝœ๋ก , ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„์ด ์ฐจ๋ก€๋กœ ๋‚˜์˜ต๋‹ˆ๋‹ค. ํ—ค๋”
์˜ ๊ฐ€์น˜ [ํ”„๋กœ๊ทธ๋žจ:foo] "foo"๋ผ๋Š” ์ด๋ฆ„์˜ ํ”„๋กœ๊ทธ๋žจ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค
์ด ๊ฒฐ๊ณผ๋กœ ์ƒ์„ฑ๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ์–ดํ•˜๋Š” โ€‹โ€‹ํด๋ผ์ด์–ธํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ
๊ตฌ์„ฑ. ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„์ด ์—†๋Š” ์„น์…˜. NS
์ด๋ฆ„์€ ์ฝœ๋ก  ๋ฌธ์ž๋‚˜ ๋Œ€๊ด„ํ˜ธ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์˜ ๊ฐ’์€
์— ๋Œ€ํ•œ ๊ฐ’์œผ๋กœ ์‚ฌ์šฉ %(ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„)s ๋‹ค๋ฅธ ๊ฐ’ ๋‚ด์—์„œ ๋ฌธ์ž์—ด ํ‘œํ˜„์‹ ํ™•์žฅ
์ง€์ •๋œ ๊ณณ.

์•Œ๋ฆผ:
A [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜์€ ์‹ค์ œ๋กœ ๊ฐ๋…์ž์—๊ฒŒ "๋™์ข… ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน"์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
(3.0 ๊ธฐ์ค€). ๊ทธ๋ฃน์˜ ๊ตฌ์„ฑ์›์€ ๋‹ค์Œ ์กฐํ•ฉ์œผ๋กœ ์ •์˜๋ฉ๋‹ˆ๋‹ค. ์ˆซ์ž ํ”„๋กœ์„ธ์„œ
and ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„ ๊ตฌ์„ฑ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜. ๊ธฐ๋ณธ์ ์œผ๋กœ numprocs ๋ฐ
process_name์€ ๊ธฐ๋ณธ๊ฐ’์—์„œ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์€ ์ฑ„๋กœ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฃน์€ ๋‹ค์Œ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
[ํ”„๋กœ๊ทธ๋žจ:x] ๋ช…๋ช…๋ฉ๋‹ˆ๋‹ค x ์ด๋ฆ„์ด ์ง€์ •๋œ ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. x ๊ทธ๊ฒƒ์—. ์ด
์ด์ „ ๊ฐ๋…์ž ๋ฆด๋ฆฌ์Šค์™€ ์•ฝ๊ฐ„์˜ ํ•˜์œ„ ํ˜ธํ™˜์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋žจ ์„น์…˜์„ ๋™์ข… ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน ์ •์˜๋กœ ์ทจ๊ธ‰ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

ํ•˜์ง€๋งŒ ์˜ˆ๋ฅผ ๋“ค์–ด [ํ”„๋กœ๊ทธ๋žจ:foo] ์„น์…˜ ์ˆซ์ž ํ”„๋กœ์„ธ์„œ 3์˜
ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„ ํ‘œํ˜„ %(ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„)s_%(ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ)02d, "foo" ๊ทธ๋ฃน์€
๋ช…๋ช…๋œ ์„ธ ๊ฐ€์ง€ ํ”„๋กœ์„ธ์Šค๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. foo_00, foo_01๋ฐ foo_02. ์ด๋ฅผ ํ†ตํ•ด ๋‹ค์Œ์ด ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.
ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งค์šฐ ์œ ์‚ฌํ•œ ์—ฌ๋Ÿฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. [ํ”„๋กœ๊ทธ๋žจ:x] ๋ถ€๋ถ„. ๋ชจ๋‘
๋กœ๊ทธ ํŒŒ์ผ ์ด๋ฆ„, ๋ชจ๋“  ํ™˜๊ฒฝ ๋ฌธ์ž์—ด ๋ฐ ํ”„๋กœ๊ทธ๋žจ ๋ช…๋ น๋„ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์œ ์‚ฌํ•œ Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹, ๊ฐ๊ฐ์— ์•ฝ๊ฐ„ ๋‹ค๋ฅธ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ „๋‹ฌ
ํ”„๋กœ์„ธ์Šค.

[ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
๋ช…๋ น
์ด ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋  ๋•Œ ์‹คํ–‰๋  ๋ช…๋ น์ž…๋‹ˆ๋‹ค. ๋ช…๋ น์€ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ ˆ๋Œ€(์˜ˆ: /๊ฒฝ๋กœ/๋Œ€์ƒ/ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„) ๋˜๋Š” ์นœ์ฒ™(์˜ˆ: ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„). ๋งŒ์•ฝ ๊ทธ๋ ‡๋‹ค๋ฉด
์นœ์ฒ™, ๊ฐ๋…์ž์˜ ํ™˜๊ฒฝ $ PATH ์‹คํ–‰ ํŒŒ์ผ์„ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋žจ์€ ์ธ์ˆ˜๋ฅผ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. /๊ฒฝ๋กœ/๋Œ€์ƒ/ํ”„๋กœ๊ทธ๋žจ ํ‘ธ ๋ฐ”. ๋ช…๋ น์ค„์€ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋žจ์— ์ „๋‹ฌํ•  ๊ณต๋ฐฑ์ด ์žˆ๋Š” ๊ทธ๋ฃน ์ธ์ˆ˜์— ๋Œ€ํ•œ ํฐ ๋”ฐ์˜ดํ‘œ, ์˜ˆ
/๊ฒฝ๋กœ/๋Œ€์ƒ/ํ”„๋กœ๊ทธ๋žจ/์ด๋ฆ„ -p "ํ›„ ์ˆ ์ง‘". ์˜ ๊ฐ’์— ์œ ์˜ํ•˜์‹ญ์‹œ์˜ค. ๋ช…๋ น ํŒŒ์ด์ฌ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋ฌธ์ž์—ด ํ‘œํ˜„์‹, ์˜ˆ /๊ฒฝ๋กœ/๋Œ€์ƒ/ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„ --ํฌํŠธ=80%(process_num)02d ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
์— /๊ฒฝ๋กœ/๋Œ€์ƒ/ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„ --ํฌํŠธ=8000 ๋Ÿฐํƒ€์ž„์—. ๋ฌธ์ž์—ด ํ‘œํ˜„์‹์ด ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.
ํ‚ค๋ฅผ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์— ๋Œ€ํ•ด ๊ทธ๋ฃน ์ด๋ฆ„, ํ˜ธ์ŠคํŠธ ๋…ธ๋“œ ์ด๋ฆ„, ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ,
ํ”„๋กœ๊ทธ๋žจ _ ์ด๋ฆ„, LINK (Supervisord ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๋””๋ ‰ํ† ๋ฆฌ) ๋ฐ ๋ชจ๋“ 
์ ‘๋‘์‚ฌ๊ฐ€ ๋ถ™์€ ๊ด€๋ฆฌ์ž์˜ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ํ™˜๊ฒฝ_. ์ œ์–ด ํ”„๋กœ๊ทธ๋žจ์€
์ž์‹ ์€ ๋ฐ๋ชฌ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๊ฐ๋…์ž๋Š” ์ž์‹ ์˜ ๋ฐ๋ชฌํ™”์— ๋Œ€ํ•œ ์ฑ…์ž„์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.
ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค(nondaemonizing_of_subprocesses ์ฐธ์กฐ).

ํƒœ๋งŒ: ๊ธฐ๋ณธ๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์˜ˆ.

๋„์ž…: 3.0

ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„
์ด์— ๋Œ€ํ•œ ๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹
ํ”„๋กœ์„ธ์Šค. ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ํ•œ ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๊ฒƒ์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ๊ฑฑ์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
์ˆซ์ž ํ”„๋กœ์„ธ์„œ. ๋ฌธ์ž์—ด ํ‘œํ˜„์‹์€ ๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์— ๋Œ€ํ•ด ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฃน ์ด๋ฆ„, ํ˜ธ์ŠคํŠธ ๋…ธ๋“œ ์ด๋ฆ„, ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ, ํ”„๋กœ๊ทธ๋žจ _ ์ด๋ฆ„๋ฐ LINK (๋””๋ ‰ํ† ๋ฆฌ
Supervisord ๊ตฌ์„ฑ ํŒŒ์ผ).

ํƒœ๋งŒ: %(ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„)s

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ˆซ์ž ํ”„๋กœ์„ธ์„œ
Supervisor๋Š” numprocs์— ์˜ํ•ด ๋ช…๋ช…๋œ ๋งŒํผ ์ด ํ”„๋กœ๊ทธ๋žจ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ
numprocs > 1์ด๋ฉด ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„ ํ‘œํ˜„์‹์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. %(process_num)s (๋˜๋Š”
๋‹ค์Œ์„ ํฌํ•จํ•˜๋Š” ๋‹ค๋ฅธ ์œ ํšจํ•œ Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹ ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ) ๊ทธ ์•ˆ์—.

ํƒœ๋งŒ: 1

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

numprocs_start
์ˆซ์ž๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ •์ˆ˜ ์˜คํ”„์…‹ ์ˆซ์ž ํ”„๋กœ์„ธ์„œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 0

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์šฐ์„ 
์‹œ์ž‘ ๋ฐ ์ข…๋ฃŒ ์ˆœ์„œ์—์„œ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒ๋Œ€์  ์šฐ์„  ์ˆœ์œ„์ž…๋‹ˆ๋‹ค. ๋‚ฎ์ถ”๋‹ค
์šฐ์„  ์ˆœ์œ„๋Š” ์‹œ์ž‘ํ•  ๋•Œ ๊ฐ€์žฅ ๋จผ์ € ์‹œ์ž‘ํ•˜๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ ์ข…๋ฃŒ๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
์ง‘ํ•ฉ ๋ช…๋ น์€ ๋‹ค์–‘ํ•œ ํด๋ผ์ด์–ธํŠธ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค(์˜ˆ: "๋ชจ๋‘ ์‹œ์ž‘"/"๋ชจ๋‘ ์ค‘์ง€"). ๋” ๋†’์€
์šฐ์„  ์ˆœ์œ„๋Š” ๋งˆ์ง€๋ง‰์œผ๋กœ ์‹œ์ž‘ํ•˜๊ณ  ๋จผ์ € ์ข…๋ฃŒ๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 999

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ž๋™ ์‹œ์ž‘
true์ธ ๊ฒฝ์šฐ ์ด ํ”„๋กœ๊ทธ๋žจ์€ supervisord๊ฐ€ ์‹œ์ž‘๋  ๋•Œ ์ž๋™์œผ๋กœ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์ง„์‹ค

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์‹œ์ž‘ ์ดˆ
ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋œ ํ›„ ์‹คํ–‰์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ด ์‹œ๊ฐ„(์ดˆ)
์‹œ์ž‘์ด ์„ฑ๊ณตํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•ฉ๋‹ˆ๋‹ค(ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ ์ƒํƒœ
๋‹ฌ๋ฆฌ๋Š” ์ƒํƒœ). ๋กœ ์„ค์ • 0 ํ”„๋กœ๊ทธ๋žจ์„ ๊ณ„์† ์‹คํ–‰ํ•  ํ•„์š”๊ฐ€ ์—†์Œ์„ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•ด
ํŠน์ • ์‹œ๊ฐ„.

์•Œ๋ฆผ:
ํ”„๋กœ์„ธ์Šค๊ฐ€ "์˜ˆ์ƒ๋œ" ์ข…๋ฃŒ ์ฝ”๋“œ๋กœ ์ข…๋ฃŒ๋˜๋”๋ผ๋„(์ฐธ์กฐ ์ข…๋ฃŒ ์ฝ”๋“œ), ์‹œ์ž‘
ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹ค์Œ๋ณด๋‹ค ๋นจ๋ฆฌ ์ข…๋ฃŒ๋˜๋ฉด ์—ฌ์ „ํžˆ ์‹คํŒจ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ์‹œ์ž‘ ์ดˆ.

ํƒœ๋งŒ: 1

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์žฌ์‹œ๋„
์—ฐ์† ์‹คํŒจ ์‹œ๋„ ํšŸ์ˆ˜ ๊ฐ๋…์ž ์‹œ๋„ ํ•  ๋•Œ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค
ํฌ๊ธฐํ•˜๊ณ  ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ํ”„๋กœ๊ทธ๋žจ์„ ์‹œ์ž‘ํ•˜์‹ญ์‹œ์˜ค. ์น˜๋ช…์ ์ธ ์ƒํƒœ. ๋ณด๋‹ค
์„ค๋ช…์„ ์œ„ํ•œ process_states ์น˜๋ช…์ ์ธ (์ฃผ).

ํƒœ๋งŒ: 3

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ž๋™ ์žฌ์‹œ์ž‘
๋‹ค์Œ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด ์ž๋™์œผ๋กœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ธ๊ฐ„์„ ๋‹ฌ๋ฆฌ๋Š” ์ƒํƒœ. ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆ‡๋œ, ์˜ˆ๊ธฐ์น˜ ์•Š์€๋ฐ ์ฐธ๋œ. ๋ฉด ๊ทธ๋ฆ‡๋œ, ๊ณผ์ •
์ž๋™ ์žฌ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์˜ˆ๊ธฐ์น˜ ์•Š์€, ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹ค์‹œ ์‹œ์ž‘๋  ๋•Œ
์ด ํ”„๋กœ๊ทธ๋žจ๊ณผ ๊ด€๋ จ๋œ ์ข…๋ฃŒ ์ฝ”๋“œ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์•„๋‹Œ ์ข…๋ฃŒ ์ฝ”๋“œ๋กœ ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.
ํ”„๋กœ์„ธ์Šค' ๊ตฌ์„ฑ(์ฐธ์กฐ ์ข…๋ฃŒ ์ฝ”๋“œ). ๋งŒ์•ฝ ์ฐธ๋œ, ํ”„๋กœ์„ธ์Šค๋Š” ๋ฌด์กฐ๊ฑด
์ข…๋ฃŒ ์ฝ”๋“œ์— ๊ด€๊ณ„์—†์ด ์ข…๋ฃŒ๋  ๋•Œ ๋‹ค์‹œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

์•Œ๋ฆผ:
์ž๋™ ์žฌ์‹œ์ž‘ ์—ฌ๋ถ€๋ฅผ ์ œ์–ด ๊ฐ๋…์ž ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋˜๋ฉด ์ž๋™ ์žฌ์‹œ์ž‘
์„ฑ๊ณต์ ์œผ๋กœ ์‹œ์ž‘๋œ ํ›„(ํ”„๋กœ์„ธ์Šค๋Š” ๋‹ฌ๋ฆฌ๋Š” ์ƒํƒœ).

๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹œ์ž‘๋  ๋•Œ ๋‹ค๋ฅธ ๋‹ค์‹œ ์‹œ์ž‘ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
(ํ”„๋กœ์„ธ์Šค๋Š” ์‹œ์ž‘ ์ƒํƒœ). ํ”„๋กœ์„ธ์Šค ์‹œ์ž‘ ์ค‘ ์žฌ์‹œ๋„๋Š”
์˜ํ•ด ์ œ์–ด ์‹œ์ž‘ ์ดˆ and ์žฌ์‹œ๋„.

ํƒœ๋งŒ: ์˜ˆ์ƒ์น˜ ๋ชปํ•œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ข…๋ฃŒ ์ฝ”๋“œ
๋‹ค์Œ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋Š” ์ด ํ”„๋กœ๊ทธ๋žจ์˜ "์˜ˆ์ƒ" ์ข…๋ฃŒ ์ฝ”๋“œ ๋ชฉ๋ก ์ž๋™ ์žฌ์‹œ์ž‘. ๊ฒฝ์šฐ
์ž๋™ ์žฌ์‹œ์ž‘ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€๋กœ ์„ค์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค ์˜ˆ๊ธฐ์น˜ ์•Š์€, ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์„ธ์Šค๋Š” ๋‹ค์Œ๊ณผ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.
๊ฐ๋…์ž ์ค‘์ง€ ์š”์ฒญ์˜ ๊ฒฐ๊ณผ๋กœ, ๊ฐ๋…์ž ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ชฉ๋ก์— ์ •์˜๋˜์ง€ ์•Š์€ ์ข…๋ฃŒ ์ฝ”๋“œ๋กœ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 0,2

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ •์ง€ ์‹ ํ˜ธ
์ค‘์ง€๊ฐ€ ์š”์ฒญ๋  ๋•Œ ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์‹ ํ˜ธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ TERM ์ค‘ ํ•˜๋‚˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
HUP, INT, QUIT, KILL, USR1 ๋˜๋Š” USR2.

ํƒœ๋งŒ: ๊ธฐ๊ฐ„

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

stopwaitsecs
OS๊ฐ€ SIGCHILD๋ฅผ ๋ฐ˜ํ™˜ํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์‹œ๊ฐ„(์ดˆ) ๊ฐ๋…์ž ํ›„
ํ”„๋กœ๊ทธ๋žจ์ด ์ •์ง€ ์‹ ํ˜ธ๋ฅผ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. ์ด ์‹œ๊ฐ„(์ดˆ)์ด ๊ฒฝ๊ณผํ•˜๊ธฐ ์ „์—
๊ฐ๋…์ž ํ”„๋กœ์„ธ์Šค์—์„œ SIGCHILD๋ฅผ ์ˆ˜์‹ ํ•˜๊ณ , ๊ฐ๋…์ž ๊ทธ๊ฒƒ์„ ์ฃฝ์ด๋ ค๊ณ  ํ•  ๊ฒƒ์ด๋‹ค
๋งˆ์ง€๋ง‰ SIGKILL๊ณผ ํ•จ๊ป˜.

ํƒœ๋งŒ: 10

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์ •์ง€ ๊ทธ๋ฃน
true์ธ ๊ฒฝ์šฐ ํ”Œ๋ž˜๊ทธ๋Š” ์ˆ˜ํผ๋ฐ”์ด์ €๊ฐ€ ์ „์ฒด ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน์— ์ค‘์ง€ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ด๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์•”์‹œํ•œ๋‹ค ํ‚ฌ๋ผ์Šค๊ทธ๋ฃน ์‚ฌ์‹ค์ด๋‹ค. ์ด๊ฒƒ์€ ๋””๋ฒ„๊ทธ์˜ Flask์™€ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ž์‹์—๊ฒŒ ์ •์ง€ ์‹ ํ˜ธ๋ฅผ ์ „ํŒŒํ•˜์ง€ ์•Š๊ณ  ๊ณ ์•„๋กœ ๋‚จ๊ฒจ๋‘๋Š” ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0b1

ํ‚ฌ๋ผ์Šค๊ทธ๋ฃน
์ฐธ์ด๋ฉด ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•˜๊ธฐ ์œ„ํ•ด SIGKILL์„ ๋ณด๋‚ด๋ ค๊ณ  ํ•  ๋•Œ
๋Œ€์‹  ์ „์ฒด ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน์ด ์ž์‹์„ ๋Œ๋ณด๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
์‚ฌ์šฉํ•˜๋Š” ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋žจ ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0a11

์‚ฌ์šฉ์ž
์ง€์‹œ ๊ฐ๋…์ž ์ด UNIX ์‚ฌ์šฉ์ž ๊ณ„์ •์„ ์‹คํ–‰ํ•˜๋Š” ๊ณ„์ •์œผ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด
ํ”„๋กœ๊ทธ๋žจ. ์‚ฌ์šฉ์ž๋Š” ๋‹ค์Œ ๊ฒฝ์šฐ์—๋งŒ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…์ž ๋ฃจํŠธ ์‚ฌ์šฉ์ž๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์—
๊ฐ๋…์ž ์ง€์ •๋œ ์‚ฌ์šฉ์ž๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์•Œ๋ฆผ:
์‚ฌ์šฉ์ž๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค. setuid ์˜ค์ง. ์ด๊ฒƒ์€ ๋กœ๊ทธ์ธ ์…ธ์„ ์‹œ์ž‘ํ•˜์ง€ ์•Š์œผ๋ฉฐ
๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. USER or ํ™ˆ. ์ฐธ์กฐ
์ž์„ธํ•œ ๋‚ด์šฉ์€ subprocess_environment๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

ํƒœ๋งŒ: ์‚ฌ์šฉ์ž๋ฅผ ์ „ํ™˜ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋ฆฌ๋””๋ ‰์…˜_stderr
true์ธ ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค์˜ stderr ์ถœ๋ ฅ์ด ๊ฐ๋…์ž ํ‘œ์ค€ ์ถœ๋ ฅ์—
ํŒŒ์ผ ์„ค๋ช…์ž(UNIX ์…ธ ์šฉ์–ด๋กœ ์ด๊ฒƒ์€ /ํ”„๋กœ๊ทธ๋žจ
2> ๋ฐ 1).

์•Œ๋ฆผ:
์„ค์ •ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค redirect_stderr = true ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. [์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:x] ๋ถ€๋ถ„. ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ
์‚ฌ์šฉ ํ‘œ์ค€ ์ถœ๋ ฅ and ํ‘œ์ค€ ์™€ ์†Œํ†ตํ•˜๋‹ค ๊ฐ๋…์ž. ๋ฉด ํ‘œ์ค€ ์˜ค๋ฅ˜ ๋ฆฌ๋””๋ ‰์…˜๋˜๊ณ ,
์ถœ์ฒ˜ : ํ‘œ์ค€ ์˜ค๋ฅ˜ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ”„๋กœํ† ์ฝœ์„ ๋ฐฉํ•ดํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0, 2.0 ๋Œ€์ฒด log_stdout and log_stderr

stdout_log ํŒŒ์ผ
ํ”„๋กœ์„ธ์Šค stdout ์ถœ๋ ฅ์„ ์ด ํŒŒ์ผ์— ๋„ฃ์Šต๋‹ˆ๋‹ค(๊ทธ๋ฆฌ๊ณ  ๋งŒ์•ฝ redirect_stderr์ด ์ฐธ์ด๋ฉด,
์ด ํŒŒ์ผ์˜ stderr ์ถœ๋ ฅ). ๋งŒ์•ฝ์— stdout_log ํŒŒ์ผ ์„ค์ •๋˜์ง€ ์•Š์•˜๊ฑฐ๋‚˜ AUTO, ๊ฐ๋…์ž
์ž๋™์œผ๋กœ ํŒŒ์ผ ์œ„์น˜๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๋กœ ์„ค์ •ํ•˜๋ฉด ์—†์Œ, ๊ฐ๋…์ž๋Š”
๋กœ๊ทธ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. AUTO ๋กœ๊ทธ ํŒŒ์ผ ๋ฐ ํ•ด๋‹น ๋ฐฑ์—…์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ๊ฐ๋…์ž
๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. NS stdout_log ํŒŒ์ผ ๊ฐ’์€ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๋Š” Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ‚ค๋ฅผ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์— ๋Œ€ํ•ด ํ‰๊ฐ€๋จ ๊ทธ๋ฃน ์ด๋ฆ„, ํ˜ธ์ŠคํŠธ ๋…ธ๋“œ ์ด๋ฆ„,
ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ, ํ”„๋กœ๊ทธ๋žจ _ ์ด๋ฆ„๋ฐ LINK (Supervisord ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ๋””๋ ‰ํ† ๋ฆฌ).

์•Œ๋ฆผ:
๋‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹จ์ผ ๋กœ๊ทธ ํŒŒ์ผ(stdout_log ํŒŒ์ผ)
ํšŒ์ „ํ•  ๋•Œ(stdout_logfile_maxbytes) ์‚ฌ์šฉ ๊ฐ€๋Šฅ. ๊ทธ๋Ÿฌ๋ฉด ํŒŒ์ผ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
์†์ƒ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: AUTO

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0, 2.0 ๋Œ€์ฒด ๋กœ๊ทธ ํŒŒ์ผ

stdout_logfile_maxbytes
์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๋ฐ”์ดํŠธ ์ˆ˜ stdout_log ํŒŒ์ผ ํšŒ์ „ํ•˜๊ธฐ ์ „์—
(๊ฐ’์— "KB", "MB" ๋ฐ "GB"์™€ ๊ฐ™์€ ์ ‘๋ฏธ์‚ฌ ์Šน์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ). ์ด๊ฒƒ์„ ์„ค์ •
๋ฌด์ œํ•œ ๋กœ๊ทธ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด ๊ฐ’์„ 0์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 50MB

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0, 2.0 ๋Œ€์ฒด logfile_maxbytes

stdout_logfile_backups
๊ฐœ์ˆ˜ stdout_log ํŒŒ์ผ ํ”„๋กœ์„ธ์Šค stdout ๋กœ๊ทธ๋กœ ์ธํ•œ ๋ฐฑ์—…
ํŒŒ์ผ ํšŒ์ „. 0์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ฐฑ์—…์ด ์œ ์ง€๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 10

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0, 2.0 ๋Œ€์ฒด ๋กœ๊ทธ ํŒŒ์ผ_๋ฐฑ์—…

stdout_capture_maxbytes
ํ”„๋กœ์„ธ์Šค๊ฐ€ "stdout capture mode"์ผ ๋•Œ FIFO๋ฅผ ์บก์ฒ˜ํ•˜๊ธฐ ์œ„ํ•ด ์“ฐ์—ฌ์ง„ ์ตœ๋Œ€ ๋ฐ”์ดํŠธ ์ˆ˜
(capture_mode ์ฐธ์กฐ). ์ •์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค("KB", "MB" ๋ฐ "GB"์™€ ๊ฐ™์€ ์ ‘๋ฏธ์‚ฌ ์Šน์ˆ˜
๊ฐ’)์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฐ’์ด 0์ด๋ฉด ํ”„๋กœ์„ธ์Šค ์บก์ฒ˜ ๋ชจ๋“œ๊ฐ€ ํ•ด์ œ๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 0

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0, 2.0 ๋Œ€์ฒด ๋กœ๊ทธ ํŒŒ์ผ_๋ฐฑ์—…

stdout_events_enabled
true์ธ ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•ด๋‹น ๋ฐ์ดํ„ฐ์— ์“ธ ๋•Œ PROCESS_LOG_STDOUT ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
stdout ํŒŒ์ผ ๊ธฐ์ˆ ์ž. ์ด๋ฒคํŠธ๋Š” ํŒŒ์ผ ์„ค๋ช…์ž๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์‹ ๋  ๋•Œ ์บก์ฒ˜ ๋ชจ๋“œ์—์„œ(capture_mode ์ฐธ์กฐ).

ํƒœ๋งŒ: 0

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0a7

stderr_log ํŒŒ์ผ
๋‹ค์Œ์„ ์ œ์™ธํ•˜๊ณ  ํ”„๋กœ์„ธ์Šค stderr ์ถœ๋ ฅ์„ ์ด ํŒŒ์ผ์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ๋ฆฌ๋””๋ ‰์…˜_stderr ์‚ฌ์‹ค์ด๋‹ค. ์ˆ˜๋ฝ
๋™์ผํ•œ ๊ฐ’ ์œ ํ˜• stdout_log ํŒŒ์ผ ๋™์ผํ•œ Python ๋ฌธ์ž์—ด ํ‘œํ˜„์‹์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•Œ๋ฆผ:
๋‘ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹จ์ผ ๋กœ๊ทธ ํŒŒ์ผ(stderr_log ํŒŒ์ผ)
ํšŒ์ „ํ•  ๋•Œ(stderr_logfile_maxbytes) ์‚ฌ์šฉ ๊ฐ€๋Šฅ. ๊ทธ๋Ÿฌ๋ฉด ํŒŒ์ผ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
์†์ƒ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: AUTO

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

stderr_logfile_maxbytes
์— ๋Œ€ํ•œ ๋กœ๊ทธ ํŒŒ์ผ ํšŒ์ „ ์ด์ „์˜ ์ตœ๋Œ€ ๋ฐ”์ดํŠธ ์ˆ˜ stderr_log ํŒŒ์ผ. ์ˆ˜๋ฝ
๋™์ผํ•œ ๊ฐ’ ์œ ํ˜• stdout_logfile_maxbytes.

ํƒœ๋งŒ: 50MB

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

stderr_logfile_backups
ํ”„๋กœ์„ธ์Šค stderr ๋กœ๊ทธ ํŒŒ์ผ ํšŒ์ „์œผ๋กœ ์ธํ•ด ์œ ์ง€๋  ๋ฐฑ์—… ์ˆ˜์ž…๋‹ˆ๋‹ค.
0์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ๋ฐฑ์—…์ด ์œ ์ง€๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 10

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

stderr_capture_maxbytes
ํ”„๋กœ์„ธ์Šค๊ฐ€ "stderr ์บก์ฒ˜ ๋ชจ๋“œ"์— ์žˆ์„ ๋•Œ FIFO๋ฅผ ์บก์ฒ˜ํ•˜๊ธฐ ์œ„ํ•ด ์“ฐ์—ฌ์ง„ ์ตœ๋Œ€ ๋ฐ”์ดํŠธ ์ˆ˜
(capture_mode ์ฐธ์กฐ). ์ •์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค("KB", "MB" ๋ฐ "GB"์™€ ๊ฐ™์€ ์ ‘๋ฏธ์‚ฌ ์Šน์ˆ˜
๊ฐ’)์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฐ’์ด 0์ด๋ฉด ํ”„๋กœ์„ธ์Šค ์บก์ฒ˜ ๋ชจ๋“œ๊ฐ€ ํ•ด์ œ๋ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 0

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

stderr_events_enabled
true์ธ ๊ฒฝ์šฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•ด๋‹น ๋ฐ์ดํ„ฐ์— ์“ธ ๋•Œ PROCESS_LOG_STDERR ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
stderr ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ. ํŒŒ์ผ ์„ค๋ช…์ž๊ฐ€ ์•„๋‹Œ ๊ฒฝ์šฐ์—๋งŒ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์‹ ๋  ๋•Œ ์บก์ฒ˜ ๋ชจ๋“œ์—์„œ(capture_mode ์ฐธ์กฐ).

ํƒœ๋งŒ: ๊ฑฐ์ง“

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0a7

ํ™˜๊ฒฝ
ํ˜•์‹์˜ ํ‚ค/๊ฐ’ ์Œ ๋ชฉ๋ก ํ‚ค = "๋ฐœ", ํ‚ค2 = "๋ฐœ2" ์— ๋ฐฐ์น˜๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ž์‹ ํ”„๋กœ์„ธ์Šค' ํ™˜๊ฒฝ. ํ™˜๊ฒฝ ๋ฌธ์ž์—ด์—๋Š” Python ๋ฌธ์ž์—ด์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํฌํ•จํ•˜๋Š” ์‚ฌ์ „์— ๋Œ€ํ•ด ํ‰๊ฐ€๋  ํ‘œํ˜„์‹ ๊ทธ๋ฃน ์ด๋ฆ„,
ํ˜ธ์ŠคํŠธ ๋…ธ๋“œ ์ด๋ฆ„, ํ”„๋กœ์„ธ์Šค ๋ฒˆํ˜ธ, ํ”„๋กœ๊ทธ๋žจ _ ์ด๋ฆ„๋ฐ LINK (๊ฐ๋…์ž์˜ ๋””๋ ‰ํ† ๋ฆฌ
๊ตฌ์„ฑ ํŒŒ์ผ). ์˜์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฐ’์€ ๋”ฐ์˜ดํ‘œ๋กœ ๋ฌถ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ:
ํ‚ค = "๋ฐœ:123", ํ‚ค2 = "๋ฐœ,456"). ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ฐ’์„ ์ธ์šฉํ•˜๋Š” ๊ฒƒ์€ ์„ ํƒ ์‚ฌํ•ญ์ด์ง€๋งŒ
์ข‹์Šต๋‹ˆ๋‹ค. ์ฃผ์˜ ์‚ฌํ•ญ ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค๋Š” ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์ƒ์†ํ•ฉ๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์—์„œ ์žฌ์ •์˜๋œ ๊ฒƒ์„ ์ œ์™ธํ•˜๊ณ  "๊ฐ๋…์ž"๋ฅผ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์…ธ์ž…๋‹ˆ๋‹ค. ๋ณด๋‹ค
ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค_ํ™˜๊ฒฝ.

ํƒœ๋งŒ: ์ถ”๊ฐ€ ํ™˜๊ฒฝ ์—†์Œ

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์˜ˆ๋ฐฐ ๊ทœ์น™์„œ
๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํŒŒ์ผ ๊ฒฝ๋กœ ๊ฐ๋…์ž ์ผ์‹œ์ ์œผ๋กœ chdir
์•„์ด๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์ „์—.

ํƒœ๋งŒ: chdir ์—†์Œ(๊ฐ๋…์ž์˜ ์ƒ์†)

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋งˆ์Šคํฌ
ํ”„๋กœ์„ธ์Šค์˜ umask๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” 002์ง„์ˆ˜(์˜ˆ: 022, XNUMX)์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ํŠน๋ณ„ํ•œ umask ์—†์Œ(๊ฐ๋…๊ด€ ์ƒ์†)

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์„œ๋ฒ„ URL
ํ™˜๊ฒฝ์—์„œ ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค ํ”„๋กœ์„ธ์Šค๋กœ ์ „๋‹ฌ๋œ URL์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. SUPERVISOR_SERVER_URL
(์ฐธ์กฐ ๊ฐ๋…์ž.childutils) ํ•˜์œ„ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹ค์Œ๊ณผ ์‰ฝ๊ฒŒ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋„๋ก
๋‚ด๋ถ€ HTTP ์„œ๋ฒ„. ์ œ๊ณต๋˜๋Š” ๊ฒฝ์šฐ ๋™์ผํ•œ ๊ตฌ๋ฌธ ๋ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
[๊ฐ๋…๊ด€] ๊ฐ™์€ ์ด๋ฆ„์˜ ์„น์…˜ ์˜ต์…˜. AUTO๋กœ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ์„ค์ •ํ•˜์ง€ ์•Š์œผ๋ฉด
๊ฐ๋…์ž๋Š” ์ž๋™์œผ๋กœ ์„œ๋ฒ„ URL์„ ๊ตฌ์„ฑํ•˜์—ฌ ์„œ๋ฒ„์— ์šฐ์„  ์ˆœ์œ„๋ฅผ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.
์ธํ„ฐ๋„ท ์†Œ์ผ“์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ์ž๋™

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์˜ˆ์‹œ
[ํ”„๋กœ๊ทธ๋žจ:๊ณ ์–‘์ด]
๋ช…๋ น =/bin/๊ณ ์–‘์ด
ํ”„๋กœ์„ธ์Šค ์ด๋ฆ„=%(ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„)s
numprocs=1
๋””๋ ‰ํ† ๋ฆฌ=/ TMP
์šฐ๋งˆ์Šคํฌ=022
์šฐ์„  ์ˆœ์œ„ = 999
์ž๋™ ์‹œ์ž‘ = ์ฐธ
autorestart=์˜ˆ์ƒ์น˜ ๋ชปํ•œ
์‹œ์ž‘ ์ดˆ = 10
์‹œ์ž‘ ์žฌ์‹œ๋„=3
์ข…๋ฃŒ ์ฝ”๋“œ=0,2
์ •์ง€ ์‹ ํ˜ธ = TERM
stopwaitsecs=10
stopasgroup=๊ฑฐ์ง“
killasgroup=๊ฑฐ์ง“
์‚ฌ์šฉ์ž=ํฌ๋ฆฌ์Šค๋งˆ์Šค
redirect_stderr=๊ฑฐ์ง“
stdout_logfile=/a/๊ฒฝ๋กœ
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stdout_events_enabled=๊ฑฐ์ง“
stderr_logfile=/a/๊ฒฝ๋กœ
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
stderr_events_enabled=๊ฑฐ์ง“
ํ™˜๊ฒฝ=A="1",B="2"
serverurl=์ž๋™

[ํฌํ•จํ•˜๋‹ค] ์„น์…˜ ์„ค์ •
์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฐ๋…์ž.conf ํŒŒ์ผ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„น์…˜์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. [ํฌํ•จํ•˜๋‹ค]. ๊ตฌ์„ฑ์ด
ํŒŒ์ผ์— ํฌํ•จ [ํฌํ•จํ•˜๋‹ค] ์„น์…˜์—์„œ "files"๋ผ๋Š” ๋‹จ์ผ ํ‚ค๋ฅผ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. NS
์ด ํ‚ค์˜ ๊ฐ’์€ ๋‚ด๋ถ€์— ํฌํ•จ๋  ๋‹ค๋ฅธ ๊ตฌ์„ฑ ํŒŒ์ผ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
๊ตฌ์„ฑ.

[ํฌํ•จํ•˜๋‹ค] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
ํŒŒ์ผ
๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋œ ํŒŒ์ผ ๊ธ€๋กœ๋ธŒ ์‹œํ€€์Šค์ž…๋‹ˆ๋‹ค. ๊ฐ ํŒŒ์ผ glob์€ ์ ˆ๋Œ€์ ์ด๊ฑฐ๋‚˜ ์ƒ๋Œ€์ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํŒŒ์ผ glob์ด ์ƒ๋Œ€์ ์ธ ๊ฒฝ์šฐ ํŒŒ์ผ์˜ ์œ„์น˜์— ์ƒ๋Œ€์ ์ธ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.
๊ทธ๊ฒƒ์„ ํฌํ•จํ•˜๋Š” ๊ตฌ์„ฑ ํŒŒ์ผ. "glob"์€ ์ผ์น˜ํ•˜๋Š” ํŒŒ์ผ ํŒจํ„ด์ž…๋‹ˆ๋‹ค.
Unix ์…ธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ทœ์น™์— ๋”ฐ๋ผ ์ง€์ •๋œ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ๋ฌผ๊ฒฐํ‘œ ํ™•์žฅ ์—†์Œ
๋๋‚ฌ์ง€๋งŒ *, ?, ๋ฐ ๋ฌธ์ž ๋ฒ”์œ„๋กœ ํ‘œํ˜„๋œ [] ์ •ํ™•ํ•˜๊ฒŒ ์ผ์น˜๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
ํฌํ•จ๋œ ํŒŒ์ผ์˜ ์žฌ๊ท€ ํฌํ•จ์€ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: ๊ธฐ๋ณธ๊ฐ’ ์—†์Œ(ํ•„์ˆ˜)

ํ•„์ˆ˜: ์˜ˆ.

๋„์ž…: 3.0

[ํฌํ•จํ•˜๋‹ค] ์„น์…˜ ์˜ˆ์‹œ
[ํฌํ•จํ•˜๋‹ค]
ํŒŒ์ผ = /an/absolute/filename.conf /an/absolute/*.conf foo.conf config??.conf

[๊ทธ๋ฃน:x] ์„น์…˜ ์„ค์ •
"๋™์ข…" ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน(์ผ๋ช… "ํ”„๋กœ๊ทธ๋žจ")์„ ๊ทธ๋ฃนํ™”ํ•˜๋Š” ๊ฒƒ์ด ์ข…์ข… ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
"์ด๊ธฐ์ข…" ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน์„ ํ†ตํ•ด ๊ด€๋ฆฌ์ž์˜ ๋‹จ์œ„๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์–‘ํ•œ ์ปจํŠธ๋กค๋Ÿฌ ์ธํ„ฐํŽ˜์ด์Šค.

ํ•˜๋‚˜์˜ ๋‹จ์œ„๋กœ ์ทจ๊ธ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ”„๋กœ๊ทธ๋žจ์„ ๊ทธ๋ฃน์— ๋ฐฐ์น˜ํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ •์˜ํ•˜์‹ญ์‹œ์˜ค. [๊ทธ๋ฃน:x] ์„น์…˜์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๊ตฌ์„ฑ ํŒŒ์ผ์—์„œ. ๊ทธ๋ฃน ํ—ค๋” ๊ฐ’์€ ํ•ฉ์„ฑ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‹จ์–ด
"group" ๋‹ค์Œ์— ์ฝœ๋ก ์ด ์˜ค๊ณ  ๊ทธ ๋‹ค์Œ์— ๊ทธ๋ฃน ์ด๋ฆ„์ด ์˜ต๋‹ˆ๋‹ค. ํ—ค๋” ๊ฐ’ [๊ทธ๋ฃน:ํ‘ธ]
"foo"๋ผ๋Š” ์ด๋ฆ„์˜ ๊ทธ๋ฃน์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฆ„์€ ํด๋ผ์ด์–ธํŠธ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
์ด ๊ตฌ์„ฑ์˜ ๊ฒฐ๊ณผ๋กœ ์ƒ์„ฑ๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€
์ƒ์„ฑ ์˜ค๋ฅ˜ ๊ทธ๋ฃน ์ด๋ฆ„์ด ์—†๋Š” ์„น์…˜. ์ด๋ฆ„์—๋Š”
์ฝœ๋ก  ๋ฌธ์ž ๋˜๋Š” ๋Œ€๊ด„ํ˜ธ ๋ฌธ์ž.

[๊ทธ๋ฃน:x], ํ•˜๋‚˜ ์ด์ƒ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜
๊ตฌ์„ฑ ํŒŒ์ผ์ด๋ฉฐ ๊ทธ๋ฃน์€ ๊ตฌ์„ฑ ํŒŒ์ผ์—์„œ ์ด๋ฆ„์œผ๋กœ ์ฐธ์กฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋žจ ๊ฐ’.

"๋™์ข…" ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน(ํ”„๋กœ๊ทธ๋žจ ์„น์…˜์œผ๋กœ ํ‘œ์‹œ)์ด
"์ด๊ธฐ์ข…" ๊ทธ๋ฃน์„ ํ†ตํ•ด [๊ทธ๋ฃน:x] ์„น์…˜์˜ ํ”„๋กœ๊ทธ๋žจ ์„ , ๊ท ์งˆํ•œ ๊ทธ๋ฃน
ํ”„๋กœ๊ทธ๋žจ ์„น์…˜์€ ๊ฐ๋…์ž์˜ ๋Ÿฐํƒ€์ž„์— ์กด์žฌํ•˜์ง€ ์•Š์Œ์„ ์•”์‹œํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  ๋ชจ๋“ 
๋™์ข… ๊ทธ๋ฃน ๊ฐ๊ฐ์— ์†ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋Š”
์ด์งˆ์ ์ธ ๊ทธ๋ฃน. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ ๊ทธ๋ฃน ๊ตฌ์„ฑ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

[๊ทธ๋ฃน:ํ‘ธ]
ํ”„๋กœ๊ทธ๋žจ=๋ฐ”,๋ฐ”์ฆˆ
์šฐ์„  ์ˆœ์œ„ = 999

์œ„์˜ ์‚ฌํ•ญ์„ ๊ฐ์•ˆํ•  ๋•Œ ๊ฐ๋…์ž ์‹œ์ž‘ ์‹œ, ๋ฐ” and ๋ฐ”์ฆˆ ๋™์งˆ์ ์ธ ๊ทธ๋ฃน์€
์กด์žฌํ•˜๊ณ  ๊ทธ ์•„๋ž˜ ์žˆ์—ˆ์„ ํ”„๋กœ์„ธ์Šค๋Š” ์ด์ œ ํ‘ธ
๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

[๊ทธ๋ฃน:x] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
ํ”„๋กœ๊ทธ๋žจ
์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋œ ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„ ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ๋‚˜์—ด๋œ ํ”„๋กœ๊ทธ๋žจ์€ ํšŒ์›์ด ๋ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฃน์˜.

ํƒœ๋งŒ: ๊ธฐ๋ณธ๊ฐ’ ์—†์Œ(ํ•„์ˆ˜)

ํ•„์ˆ˜: ์˜ˆ.

๋„์ž…: 3.0

์šฐ์„ 
์™€ ์œ ์‚ฌํ•œ ์šฐ์„ ์ˆœ์œ„ ๋ฒˆํ˜ธ [ํ”„๋กœ๊ทธ๋žจ:x] ๊ทธ๋ฃน์— ํ• ๋‹น๋œ ์šฐ์„  ์ˆœ์œ„ ๊ฐ’์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 999

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[๊ทธ๋ฃน:x] ์„น์…˜ ์˜ˆ์‹œ
[๊ทธ๋ฃน:ํ‘ธ]
ํ”„๋กœ๊ทธ๋žจ=๋ฐ”,๋ฐ”์ฆˆ
์šฐ์„  ์ˆœ์œ„ = 999

[fcgi-ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์„ค์ •
๊ฐ๋…์ž๋Š” ๊ทธ๋ฃน์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธCGI ๋ชจ๋‘ ๋™์ผํ•œ ์†Œ์ผ“์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” ํ”„๋กœ์„ธ์Šค.
์ง€๊ธˆ๊นŒ์ง€ FastCGI์˜ ๋ฐฐํฌ ์œ ์—ฐ์„ฑ์€ ์ œํ•œ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ „์ฒด ํ”„๋กœ์„ธ์Šค๋ฅผ ์–ป์œผ๋ ค๋ฉด
๊ด€๋ฆฌ, Apache์—์„œ mod_fastcgi๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ Apache์˜
์—ฐ๊ฒฐ๋‹น ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค ๋˜๋Š” ์Šค๋ ˆ๋“œ์˜ ๋น„ํšจ์œจ์ ์ธ ๋™์‹œ์„ฑ ๋ชจ๋ธ. ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ
๋” ๋งŽ์€ CPU ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์—ฐ๊ฒฐ ๋ชจ๋ธ๋‹น ํ”„๋กœ์„ธ์Šค/์Šค๋ ˆ๋“œ๊ฐ€
๋Š๋ฆฐ ๋ฆฌ์†Œ์Šค์— ์˜ํ•ด ๋น ๋ฅด๊ฒŒ ํฌํ™”๋˜์–ด ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ œ๊ณต๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์—
lighttpd ๋˜๋Š” nginx์™€ ๊ฐ™์€ ์ตœ์‹  ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์›น ์„œ๋ฒ„๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด
๋‚ด์žฅ๋œ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ์ž๋ฅผ ํฌํ•จํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. cgi-fcgi ๋˜๋Š”
์Šคํฐ-fcgi. ์ด๋Š” Supervisord์™€ ๊ฐ™์€ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜๋Š” daemontools์ด์ง€๋งŒ ๊ฐ FastCGI ์ž์‹ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž์ฒด ์†Œ์ผ“์— ๋ฐ”์ธ๋”ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. NS
์ด๊ฒƒ์˜ ๋‹จ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค: ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋ณต์žกํ•œ ์›น ์„œ๋ฒ„ ๊ตฌ์„ฑ, ๋ถ€์ ์ ˆ
๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ณ  ๋‚ด๊ฒฐํ•จ์„ฑ์„ ์ค„์ž…๋‹ˆ๋‹ค. ๋” ์ ์€ ์ˆ˜์˜ ์†Œ์ผ“ ๊ตฌ์„ฑ์œผ๋กœ ์›น ์„œ๋ฒ„
FastCGI ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน์ด ์†Œ์ผ“์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ตฌ์„ฑ์€ ํ›จ์”ฌ ๋” ์ž‘์Šต๋‹ˆ๋‹ค. ๊ณต์œ 
์†Œ์ผ“์€ ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค์— ๋ฐ”์ธ๋”ฉ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ •์ƒ์ ์ธ ์žฌ์‹œ์ž‘์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ž์‹ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋‹ค์‹œ ์‹œ์ž‘๋˜๋Š” ๋™์•ˆ. ๋งˆ์ง€๋ง‰์œผ๋กœ ๊ณต์œ  ์†Œ์ผ“์ด ๋” ๋งŽ์Šต๋‹ˆ๋‹ค.
์ฃผ์–ด์ง„ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํŒจํ•˜๋ฉด ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๊ณ„์† ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‚ด๊ฒฐํ•จ์„ฑ
์ธ๋ฐ”์šด๋“œ ์—ฐ๊ฒฐ.

ํ†ตํ•ฉ FastCGI ์ƒ์„ฑ ์ง€์›์„ ํ†ตํ•ด Supervisor๋Š” ๋‘ ๊ฐ€์ง€ ์žฅ์ ์„ ๋ชจ๋‘ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
์†Œ์ผ“์„ ๊ณต์œ ํ•˜๋Š” FastCGI ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน์œผ๋กœ ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํŠน์ • ์›น ์„œ๋ฒ„์— ์–ฝ๋งค์ด์ง€ ์•Š๊ณ  ๊ฑฑ์ •๊ฑฐ๋ฆฌ๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์›น ์„œ๋ฒ„์™€ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ๊ฐ์ž๊ฐ€ ๊ฐ€์žฅ ์ž˜ํ•˜๋Š” ์ผ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

์•Œ๋ฆผ:
Supervisor์˜ ์†Œ์ผ“ ๊ด€๋ฆฌ์ž๋Š” ์›๋ž˜ FastCGI ํ”„๋กœ์„ธ์Šค๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ FastCGI์— ๊ตญํ•œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŠน๋ณ„ํ•œ ์ ˆ์ฐจ ์—†์ด ๋‹ค๋ฅธ ํ”„๋กœํ† ์ฝœ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ตฌ์„ฑ. ํŒŒ์ผ ์„ค๋ช…์ž์—์„œ ์—ด๋ฆฐ ์†Œ์ผ“์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ํ”„๋กœ๊ทธ๋žจ(์˜ˆ:
๊ณผ ์†Œ์ผ“.fromfd Python) ์†Œ์ผ“ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๋…๊ด€์€
์†Œ์ผ“์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , ๋ฐ”์ธ๋”ฉํ•˜๊ณ , ์ฒซ ๋ฒˆ์งธ ์ž์‹์„ ๋ถ„๊ธฐํ•˜๊ธฐ ์ „์— ์ˆ˜์‹  ๋Œ€๊ธฐํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฃน. ์†Œ์ผ“์€ ํŒŒ์ผ ์„ค๋ช…์ž ๋ฒˆํ˜ธ์˜ ๊ฐ ์ž์‹์—๊ฒŒ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค. 0 (์ œ๋กœ).
๊ทธ๋ฃน์˜ ๋งˆ์ง€๋ง‰ ์ž์‹์ด ์ข…๋ฃŒ๋˜๋ฉด Supervisor๋Š” ์†Œ์ผ“์„ ๋‹ซ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์˜ต์…˜ [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜๋„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์กด์ค‘๋ฉ๋‹ˆ๋‹ค. fcgi ํ”„๋กœ๊ทธ๋žจ
์„น์…˜์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

[fcgi-ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
[fcgi-ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜์—๋Š” ๋‹จ์ผ ํ‚ค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜์ด ์—†์Šต๋‹ˆ๋‹ค.

์†Œ์ผ“
์ด ํ”„๋กœ๊ทธ๋žจ์˜ FastCGI ์†Œ์ผ“(TCP ๋˜๋Š” UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“). TCP ์†Œ์ผ“์˜ ๊ฒฝ์šฐ,
๋‹ค์Œ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. tcp://๋กœ์ปฌํ˜ธ์ŠคํŠธ:9002. UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์˜ ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
์œ ๋‹‰์Šค:///absolute/path/to/file.sock. ๋ฌธ์ž์—ด ํ‘œํ˜„์‹์€ ๋‹ค์Œ์— ๋Œ€ํ•ด ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค.
"program_name" ๋ฐ "here" ํ‚ค๋ฅผ ํฌํ•จํ•˜๋Š” ์‚ฌ์ „(
Supervisord ๊ตฌ์„ฑ ํŒŒ์ผ).

ํƒœ๋งŒ: ๊ธฐ๋ณธ๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์˜ˆ.

๋„์ž…: 3.0

์†Œ์ผ“ ์†Œ์œ ์ž
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์˜ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ๋ฐ ๊ทธ๋ฃน์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
FastCGI ์†Œ์ผ“. UNIX ์‚ฌ์šฉ์ž ์ด๋ฆ„(์˜ˆ: chrism) ๋˜๋Š” UNIX ์‚ฌ์šฉ์ž ์ด๋ฆ„ ๋ฐ ๊ทธ๋ฃน์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ฝœ๋ก ์œผ๋กœ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค(์˜ˆ: chrism:wheel).

ํƒœ๋งŒ: fcgi ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•ด ์„ค์ •๋œ ์‚ฌ์šฉ์ž ๋ฐ ๊ทธ๋ฃน์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

์†Œ์ผ“ ๋ชจ๋“œ
UNIX ๋„๋ฉ”์ธ ์†Œ์ผ“์˜ ๊ฒฝ์šฐ ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ถŒํ•œ ๋ชจ๋“œ๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํƒœ๋งŒ: 0700

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

๋ฌธ์˜ [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์„ค์ • ๋‹ค๋ฅธ ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ ํ‚ค์˜ ๊ฒฝ์šฐ ์œ„์˜ ์ œ์•ฝ ์กฐ๊ฑด์„ ๋ธํƒ€
๊ทธ๋ฆฌ๊ณ  ์ถ”๊ฐ€.

[fcgi-ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์˜ˆ์‹œ
[fcgi-ํ”„๋กœ๊ทธ๋žจ:fcgiํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„]
๋ช…๋ น=/usr/bin/example.fcgi
์†Œ์ผ“=unix:///var/run/supervisor/%(program_name)s.sock
socket_owner=ํฌ๋ฆฌ์Šค๋งˆ์Šค
์†Œ์ผ“ ๋ชจ๋“œ=0700
process_name=%(program_name)s_%(process_num)02d
numprocs=5
๋””๋ ‰ํ† ๋ฆฌ=/ TMP
์šฐ๋งˆ์Šคํฌ=022
์šฐ์„  ์ˆœ์œ„ = 999
์ž๋™ ์‹œ์ž‘ = ์ฐธ
autorestart=์˜ˆ์ƒ์น˜ ๋ชปํ•œ
์‹œ์ž‘ ์ดˆ = 1
์‹œ์ž‘ ์žฌ์‹œ๋„=3
์ข…๋ฃŒ ์ฝ”๋“œ=0,2
์ •์ง€ ์‹ ํ˜ธ = ์ข…๋ฃŒ
stopasgroup=๊ฑฐ์ง“
killasgroup=๊ฑฐ์ง“
stopwaitsecs=10
์‚ฌ์šฉ์ž=ํฌ๋ฆฌ์Šค๋งˆ์Šค
redirect_stderr = true
stdout_logfile=/a/๊ฒฝ๋กœ
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_events_enabled=๊ฑฐ์ง“
stderr_logfile=/a/๊ฒฝ๋กœ
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_events_enabled=๊ฑฐ์ง“
ํ™˜๊ฒฝ=A="1",B="2"
serverurl=์ž๋™

[์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:x] ์„น์…˜ ์„ค์ •
Supervisor๋Š” ์ „๋ฌธํ™”๋œ ๋™์ข… ํ”„๋กœ์„ธ์Šค ๊ทธ๋ฃน("์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ’€")์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
๊ตฌ์„ฑ ํŒŒ์ผ ๋‚ด์— ์ •์˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ’€์—๋Š” ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ๋…์ž์˜ ์ด๋ฒคํŠธ ์‹œ์Šคํ…œ์—์„œ ์ด๋ฒคํŠธ ์•Œ๋ฆผ์„ ์ˆ˜์‹ ํ•˜๊ณ  ์‘๋‹ตํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒคํŠธ ๋ณด๊ธฐ
์ด๋ฒคํŠธ๊ฐ€ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹๊ณผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ ์–ธ๋  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์„ค๋ช…
์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ.

์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ์˜ต์…˜์€ [ํ”„๋กœ๊ทธ๋žจ:x] ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ๋Š” ์„น์…˜์„ ์กด์ค‘ํ•ฉ๋‹ˆ๋‹ค.
์„น์…˜ ์™ธ for stdout_capture_maxbytes and stderr_capture_maxbytes (์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ
ํ”„๋กœ์„ธ์Šค ํ†ต์‹  ์ด๋ฒคํŠธ๋ฅผ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. capture_mode ์ฐธ์กฐ).

[์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:x] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
[์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:x] ์„น์…˜์—๋Š” ๋ช‡ ๊ฐ€์ง€ ํ‚ค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜์ด ์—†์Šต๋‹ˆ๋‹ค.

๋ฒ„ํผ ํฌ๊ธฐ
์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ’€์˜ ์ด๋ฒคํŠธ ํ ๋ฒ„ํผ ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ๋ฆฌ์Šค๋„ˆ ํ’€์˜ ์ด๋ฒคํŠธ ๋ฒ„ํผ๊ฐ€
์˜ค๋ฒ„ํ”Œ๋กœ๋จ(์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ํ’€์ด ๋ชจ๋“ 
์ด๋ฒคํŠธ๊ฐ€ ์ „์†ก๋จ) ๋ฒ„ํผ์—์„œ ๊ฐ€์žฅ ์˜ค๋ž˜๋œ ์ด๋ฒคํŠธ๊ฐ€ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.

์ด๋ฒคํŠธ
์ด ์ˆ˜์‹ ๊ธฐ๊ฐ€ "๊ด€์‹ฌ ์žˆ๋Š”" ์ด๋ฒคํŠธ ์œ ํ˜• ์ด๋ฆ„์˜ ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋œ ๋ชฉ๋ก
์— ๋Œ€ํ•œ ์•Œ๋ฆผ ์ˆ˜์‹ (์œ ํšจํ•œ ์ด๋ฒคํŠธ ์œ ํ˜• ์ด๋ฆ„ ๋ชฉ๋ก์€ event_types ์ฐธ์กฐ).

๊ฒฐ๊ณผ_์ฒ˜๋ฆฌ๊ธฐ
A pkg_resources ํ•ญ๋ชฉ ํฌ์ธํŠธ ํ˜„ Python ํ˜ธ์ถœ ๊ฐ€๋Šฅ์œผ๋กœ ํ™•์ธ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’
๊ฐ€์น˜๋Š” Supervisor.dispatchers:default_handler. ๋Œ€์ฒด ๊ฒฐ๊ณผ ์ง€์ •
์ฒ˜๋ฆฌ๊ธฐ๋Š” ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋งค์šฐ ๋“œ๋ฌธ ์ผ์ด๋ฉฐ ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ฒ˜๋ฆฌ๊ธฐ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€
๋ฌธ์„œํ™”๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋ฌธ์˜ [ํ”„๋กœ๊ทธ๋žจ:x] ์„น์…˜ ์„ค์ • ๋‹ค๋ฅธ ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ ํ‚ค์˜ ๊ฒฝ์šฐ ์œ„์˜ ์ œ์•ฝ ์กฐ๊ฑด์„ ๋ธํƒ€
๊ทธ๋ฆฌ๊ณ  ์ถ”๊ฐ€.

[์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:x] ์„น์…˜ ์˜ˆ์‹œ
[์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ:์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ์ด๋ฆ„]
๋ช…๋ น=/bin/eventlistener
process_name=%(program_name)s_%(process_num)02d
numprocs=5
์ด๋ฒคํŠธ=PROCESS_STATE
๋ฒ„ํผ ํฌ๊ธฐ=10
๋””๋ ‰ํ† ๋ฆฌ=/ TMP
์šฐ๋งˆ์Šคํฌ=022
์šฐ์„ ์ˆœ์œ„=-1
์ž๋™ ์‹œ์ž‘ = ์ฐธ
autorestart=์˜ˆ์ƒ์น˜ ๋ชปํ•œ
์‹œ์ž‘ ์ดˆ = 1
์‹œ์ž‘ ์žฌ์‹œ๋„=3
์ข…๋ฃŒ ์ฝ”๋“œ=0,2
์ •์ง€ ์‹ ํ˜ธ = ์ข…๋ฃŒ
stopwaitsecs=10
stopasgroup=๊ฑฐ์ง“
killasgroup=๊ฑฐ์ง“
์‚ฌ์šฉ์ž=ํฌ๋ฆฌ์Šค๋งˆ์Šค
redirect_stderr=๊ฑฐ์ง“
stdout_logfile=/a/๊ฒฝ๋กœ
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_events_enabled=๊ฑฐ์ง“
stderr_logfile=/a/๊ฒฝ๋กœ
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_events_enabled=๊ฑฐ์ง“
ํ™˜๊ฒฝ=A="1",B="2"
serverurl=์ž๋™

[rpc์ธํ„ฐํŽ˜์ด์Šค:x] ์„น์…˜ ์„ค์ •
์ฒจ๊ฐ€ rpc์ธํ„ฐํŽ˜์ด์Šค:x ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ์„ค์ •์€ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋งŒ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ถ”๊ฐ€ ์‚ฌ์šฉ์ž ์ง€์ • ๋™์ž‘์œผ๋กœ ๊ฐ๋…์ž๋ฅผ ํ™•์žฅํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์ƒ˜ํ”Œ ๊ตฌ์„ฑ ํŒŒ์ผ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์„น์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. [rpcinterface:๊ฐ๋…์ž].
๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

[rpcinterface:๊ฐ๋…์ž]
์ˆ˜ํผ๋ฐ”์ด์ €.rpcinterface_factory = ์ˆ˜ํผ๋ฐ”์ด์ €.rpcinterface:make_main_rpcinterface

์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” [rpcinterface:๊ฐ๋…์ž] ์„น์…˜์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ ˆ๋Œ€๋กœ ํ•„์š”ํ•œ ๊ฒƒ ํ‘œ์ค€์— ๋Œ€ํ•œ ๊ตฌ์„ฑ ์œ ์ง€
๊ฐ๋…์ž๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ƒ์‚ฌ๊ฐ€ ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž€๋‹ค๋ฉด
๋Š” ์ด๋ฏธ ์ฆ‰์‹œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜
์•ˆ๋‚ด

๊ทธ๋Ÿฌ๋‚˜ ๊ฐ๋…์ž๋ฅผ ์‚ฌ์šฉ์ž ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด rpc ์ธํ„ฐํŽ˜์ด์Šค ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด
์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [rpc์ธํ„ฐํŽ˜์ด์Šค:foo] ์„น์…˜, ์—ฌ๊ธฐ์„œ "foo"๋Š” ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
์ธํ„ฐํŽ˜์ด์Šค(์›น ๋ฃจํŠธ์—์„œ) ๋ฐ ๋‹ค์Œ์œผ๋กœ ๋ช…๋ช…๋œ ๊ฐ’ ๊ฐ๋…์ž.rpcinterface_factory
๋‹จ์ผ ํ—ˆ์šฉํ•˜๋Š” ํ•จ์ˆ˜ ์„œ๋ช…์ด ์žˆ์–ด์•ผ ํ•˜๋Š” ํŒฉํ† ๋ฆฌ ์ฝœ๋Ÿฌ๋ธ”์ž…๋‹ˆ๋‹ค.
์œ„์น˜ ์ธ์ˆ˜ ๊ฐ๋…์ž ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋งŒํผ์˜ ํ‚ค์›Œ๋“œ ์ธ์ˆ˜
๊ตฌ์„ฑ. ๋‚ด์—์„œ ์ •์˜๋œ ์ถ”๊ฐ€ ํ‚ค/๊ฐ’ ์Œ [rpc์ธํ„ฐํŽ˜์ด์Šค:x] ์„น์…˜์€
ํŒฉํ† ๋ฆฌ์— ํ‚ค์›Œ๋“œ ์ธ์ˆ˜๋กœ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์—์„œ ์ƒ์„ฑ๋œ ํŒฉํ† ๋ฆฌ ํ•จ์ˆ˜์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค. __์ดˆ๊ธฐํ™”__.py ํŒŒ์ด์ฌ์˜ ํŒŒ์ผ
๊พธ๋Ÿฌ๋ฏธ ๋‚ด ํŒจํ‚ค์ง€.

my.package.rpcinterface์—์„œ AnotherRPCInterface ๊ฐ€์ ธ์˜ค๊ธฐ

def make_another_rpcinterface(๊ฐ๋…์ž, **๊ตฌ์„ฑ):
์žฌ์‹œ๋„ = int(config.get('์žฌ์‹œ๋„', 0))
another_rpc_interface = AnotherRPCInterface(๊ฐ๋…์ž, ์žฌ์‹œ๋„)
other_rpc_interface ๋ฐ˜ํ™˜

๊ทธ๋ฆฌ๊ณ  ๊ตฌ์„ฑ ํŒŒ์ผ์˜ ์„น์…˜์€ ๊ตฌ์„ฑ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

[rpc์ธํ„ฐํŽ˜์ด์Šค:๋‹ค๋ฅธ]
Supervisor.rpcinterface_factory = my.package:make_another_rpcinterface
์žฌ์‹œ๋„ = 1

[rpc์ธํ„ฐํŽ˜์ด์Šค:x] ์„น์…˜ ๋งˆ์ผ€ํŒ…์€:
๊ฐ๋…์ž.rpcinterface_factory
pkg_resources "์ง„์ž…์ "์€ RPC ์ธํ„ฐํŽ˜์ด์Šค์˜ ํŒฉํ† ๋ฆฌ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ ์œผ๋กœ ๋œ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

ํƒœ๋งŒ: N / A

ํ•„์ˆ˜: ์•„๋‹ˆ.

๋„์ž…: 3.0

[rpc์ธํ„ฐํŽ˜์ด์Šค:x] ์„น์…˜ ์˜ˆ์‹œ
[rpc์ธํ„ฐํŽ˜์ด์Šค:๋‹ค๋ฅธ]
Supervisor.rpcinterface_factory = my.package:make_another_rpcinterface
์žฌ์‹œ๋„ = 1

์šฉ์–ด์‚ฌ์ „
๋ฐ๋ชฌ ๋„๊ตฌ
A ๋ฐฉ๋ฒ• ์ œ์–ด ์ฒด๊ณ„ by DJ Bernstein.

๋Ÿฐ์นญ
A ๋ฐฉ๋ฒ• ์ œ์–ด ์ฒด๊ณ„ ์ต์ˆ™ํ•œ by Apple Mac OS X์—์„œ ํ”„๋กœ์„ธ์Šค 1๋กœ.

๋ฃจ๋ฐ‹ A ๋ฐฉ๋ฒ• ์ œ์–ด ์ฒด๊ณ„.

์Šˆํผ ๋žœ์Šค
ํ”Œ๋Ÿฌ๊ทธ์ธํ•˜๋Š” ๋‹ค์–‘ํ•œ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ๊ตฌํ˜„์„ ์ œ๊ณตํ•˜๋Š” ํŒจํ‚ค์ง€
ํ”„๋กœ์„ธ์Šค ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ๋ฐ ์ถฉ๋Œ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๊ฐ๋…์ž:
http://pypi.python.org/pypi/superlance.

๋งˆ์Šคํฌ ์•ฝ์–ด ์‚ฌ์šฉ์ž ๋งˆ์Šคํฌ: ํ˜„์žฌ ํ”„๋กœ์„ธ์Šค์˜ ํŒŒ์ผ ๋ชจ๋“œ ์ƒ์„ฑ ๋งˆ์Šคํฌ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
http://en.wikipedia.org/wiki/Umask.

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์œผ๋กœ echo_supervisord_conf ์‚ฌ์šฉ


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

Linux ๋ช…๋ น

Ad