์šด์˜

[์šด์˜] cpu ์ƒ์Šน๊ณผ ํŠธ๋žœ์žญ์…˜๊ณผ ์—ฐ๊ด€์„ฑ

ioh'sDeveloper 2024. 6. 16. 14:36

๐Ÿ”ฅ cpu ์ƒ์Šน๊ณผ ํŠธ๋žœ์žญ์…˜๊ณผ ์—ฐ๊ด€์„ฑ

์„œ๋ฒ„์˜ CPU ์‚ฌ์šฉ๋ฅ  ์ƒ์Šน์€ ์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜๊ณผ ๋ฐ€์ ‘ํ•˜๊ฒŒ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜์ด ์ฆ๊ฐ€ํ•˜๋ฉด CPU๋ฅผ ํฌํ•จํ•œ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค์— ๋” ๋งŽ์€ ๋ถ€ํ•˜๊ฐ€ ๊ฑธ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜ ์ฆ๊ฐ€์™€ CPU ์‚ฌ์šฉ๋ฅ  ์ƒ์Šน์˜ ๊ด€๊ณ„์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

 

์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜๊ณผ CPU ์‚ฌ์šฉ๋ฅ  ์ƒ์Šน์˜ ๊ด€๊ณ„

1. ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ:
    - ์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜์€ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค. ๊ฐ ํŠธ๋žœ์žญ์…˜์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ ์‹คํ–‰, ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ฒ˜๋ฆฌ, ์‘๋‹ต ์ƒ์„ฑ ๋“ฑ์„ ํฌํ•จํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    - ์ด๋Ÿฌํ•œ ์ž‘์—…๋“ค์€ CPU๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํŠธ๋žœ์žญ์…˜์˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก CPU ์‚ฌ์šฉ๋ฅ ๋„ ์ฆ๊ฐ€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
2. ๋™์‹œ์„ฑ:
    - ์—ฌ๋Ÿฌ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์ด ๋™์‹œ์— ์„œ๋ฒ„์— ๋„์ฐฉํ•  ๋•Œ, ์„œ๋ฒ„๋Š” ์—ฌ๋Ÿฌ ํŠธ๋žœ์žญ์…˜์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    - Tomcat๊ณผ ๊ฐ™์€ ์„œ๋ฒ„๋Š” ๋‹ค์ค‘ ์Šค๋ ˆ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์‹œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ๋™์‹œ ์š”์ฒญ์ด ์žˆ์„์ˆ˜๋ก ๋” ๋งŽ์€ ์Šค๋ ˆ๋“œ๊ฐ€ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ด๋Š” CPU ๋ถ€ํ•˜๋ฅผ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค.
3. ๋ณต์žกํ•œ ์—ฐ์‚ฐ:
    - ํŠธ๋žœ์žญ์…˜ ๋‚ด์—์„œ ๋ณต์žกํ•œ ๊ณ„์‚ฐ์ด๋‚˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ์ž‘์—…์ด ์ˆ˜ํ–‰๋  ๊ฒฝ์šฐ, ํ•ด๋‹น ์ž‘์—…๋“ค์€ ๋” ๋งŽ์€ CPU ์‹œ๊ฐ„์„ ํ•„์š”๋กœ ํ•ฉ๋‹ˆ๋‹ค.
    - ์˜ˆ๋ฅผ ๋“ค์–ด, ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ, ๋ณต์žกํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‹คํ–‰, ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ ์ž‘์—… ๋“ฑ์ด CPU ๋ถ€ํ•˜๋ฅผ ํฌ๊ฒŒ ์ฆ๊ฐ€์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
4. I/O ๋Œ€๊ธฐ:
    - CPU ๋ถ€ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋‚˜ ํŒŒ์ผ ์‹œ์Šคํ…œ๊ณผ์˜ I/O ์ž‘์—…์—์„œ๋„ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ๊ฐ€ ๋Š๋ฆฌ๊ฑฐ๋‚˜ ํŒŒ์ผ ์‹œ์Šคํ…œ์ด ๋ณ‘๋ชฉ์ด ๋˜๋Š” ๊ฒฝ์šฐ, CPU๊ฐ€ I/O ์ž‘์—… ์™„๋ฃŒ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋ฉด์„œ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜์ง€ ๋ชปํ•ด CPU ์‚ฌ์šฉ๋ฅ ์ด ์ฆ๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
5. ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๋ฐ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜:
    - ์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ์ด ์ฆ๊ฐ€ํ•˜๋ฉด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜(GC) ์ž‘์—…์ด ์ž์ฃผ ๋ฐœ์ƒํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. GC๋Š” CPU๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์ž‘์—…์ด๊ธฐ ๋•Œ๋ฌธ์— ํŠธ๋žœ์žญ์…˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก CPU ์‚ฌ์šฉ๋ฅ ์ด ์ƒ์Šนํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์›์ธ ๋ถ„์„ ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

CPU ์‚ฌ์šฉ๋ฅ  ์ƒ์Šน์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์›์ธ์„ ์ •ํ™•ํžˆ ๋ถ„์„ํ•˜๊ณ  ์ ์ ˆํ•œ ์กฐ์น˜๋ฅผ ์ทจํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๊ทธ ๋ฐฉ๋ฒ•๋“ค์ž…๋‹ˆ๋‹ค.

1. ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ ์‚ฌ์šฉ:
    - `top`, `htop`, `nmon` ๋“ฑ์˜ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CPU ์‚ฌ์šฉ๋ฅ ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค.
    - APM(Application Performance Management) ๋„๊ตฌ (์˜ˆ: New Relic, Datadog, AppDynamics)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠธ๋žœ์žญ์…˜ ์„ฑ๋Šฅ์„ ๋ถ„์„ํ•˜๊ณ  ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.

2. ๋กœ๊ทธ ๋ถ„์„

    - ์„œ๋ฒ„ ๋กœ๊ทธ๋ฅผ ๋ถ„์„ํ•˜์—ฌ CPU ์‚ฌ์šฉ๋ฅ ์ด ๊ธ‰๊ฒฉํžˆ ์ƒ์Šนํ•˜๋Š” ์‹œ์ ์— ์–ด๋–ค ์š”์ฒญ์ด๋‚˜ ์ž‘์—…์ด ์‹คํ–‰๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
3. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ตœ์ ํ™”:
    - ์ž์ฃผ ์‹คํ–‰๋˜๋Š” ๋ฐฐ์น˜ ์ž‘์—… ๋˜๋Š” ๋น„ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋‚˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค.
    - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ๋ฅผ ์ตœ์ ํ™”ํ•˜๊ณ , ์ธ๋ฑ์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.
    - ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์บ์‹ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์š”์ฒญ ์ˆ˜๋ฅผ ์ค„์ž…๋‹ˆ๋‹ค.
4. ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค ํ™•์žฅ:

    - CPU ์‚ฌ์šฉ๋ฅ ์ด ์ž์ฃผ ๋†’์•„์ง„๋‹ค๋ฉด ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•์žฅํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ ์„œ๋ฒ„๋ฅผ ๋„์ž…ํ•˜์—ฌ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ์‹œํ‚ต๋‹ˆ๋‹ค.
    - ์„œ๋ฒ„์˜ CPU ์ฝ”์–ด ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๊ฑฐ๋‚˜, ๋” ๋†’์€ ์‚ฌ์–‘์˜ ์„œ๋ฒ„๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.
    - ์„œ๋ฒ„๋ฅผ ์ˆ˜ํ‰ ํ™•์žฅ(์Šค์ผ€์ผ ์•„์›ƒ)ํ•˜์—ฌ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ์„œ๋ฒ„์— ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐ์‹œํ‚ต๋‹ˆ๋‹ค.
5. ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ:
    - ํŠธ๋žœ์žญ์…˜์˜ ํฌ๊ธฐ์™€ ๋ณต์žก์„ฑ์„ ์ค„์ž…๋‹ˆ๋‹ค. ์ž‘์€ ๋‹จ์œ„์˜ ํŠธ๋žœ์žญ์…˜์œผ๋กœ ๋ถ„ํ• ํ•˜์—ฌ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
    - ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๋ฐ ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ๋ฅผ ๋„์ž…ํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ํŠธ๋žœ์žญ์…˜ ๋ถ€ํ•˜๋ฅผ ์ค„์ž…๋‹ˆ๋‹ค.

 

๊ฒฐ๋ก 

์„œ๋ฒ„ ํŠธ๋žœ์žญ์…˜์ด ์ฆ๊ฐ€ํ•˜๋ฉด CPU ์‚ฌ์šฉ๋ฅ ์ด ์ƒ์Šนํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ ๋ฐฉ์‹์„ ์ตœ์ ํ™”ํ•˜๊ณ , ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค๋ฅผ ์ ์ ˆํžˆ ํ™•์žฅํ•˜๋ฉฐ, ํšจ์œจ์ ์ธ ๋ชจ๋‹ˆํ„ฐ๋ง๊ณผ ์„ฑ๋Šฅ ๋ถ„์„์„ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

CPU ์‚ฌ์šฉ๋ฅ ์ด ์ผ์‹œ์ ์œผ๋กœ ์ƒ์Šนํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ๋‚ฎ์•„์ง€๋Š” ๊ฒƒ์€ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ง€์†์ ์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์„ฑ๋Šฅ ์ตœ์ ํ™” ๋ฐ ์˜ˆ๋ฐฉ ์กฐ์น˜๋ฅผ ์ทจํ•จ์œผ๋กœ์จ ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

 

 

 

'์šด์˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[์šด์˜] Tomcat ์„ฑ๋Šฅ ๊ฐœ์„   (1) 2024.06.16