๐ฅ 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 ์ฌ์ฉ๋ฅ ์ด ์ผ์์ ์ผ๋ก ์์นํ๋ค๊ฐ ๋ค์ ๋ฎ์์ง๋ ๊ฒ์ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋์ง ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ง์์ ์ผ๋ก ๋ชจ๋ํฐ๋งํ๊ณ ์ฑ๋ฅ ์ต์ ํ ๋ฐ ์๋ฐฉ ์กฐ์น๋ฅผ ์ทจํจ์ผ๋ก์จ ์์คํ ์ ์์ ์ฑ์ ์ ์งํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
'์ด์' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ด์] JVM ๋ฉ๋ชจ๋ฆฌ ์ค์ , ์ ์ค์ํ ๊น? (0) | 2025.03.12 |
---|---|
[์ด์] ๋น๋๊ธฐ ์ฒ๋ฆฌ์ Thread Pool์ ํ์ฉํ API ์ฑ๋ฅ ์ต์ ํ (0) | 2025.01.30 |
์บ์(Cache) ์ ๋ต (0) | 2025.01.11 |
[๋จ์ ํ ์คํธ] ๋ฐฑ์๋ ํ ์คํธ ์๋ํ: ๋จ์ ํ ์คํธ๋ถํฐ ํตํฉ ํ ์คํธ๊น์ง (0) | 2024.09.20 |
[์ด์] Tomcat ์ฑ๋ฅ ๊ฐ์ (1) | 2024.06.16 |