π₯ cpuκ° μμΉνλ©΄ λ¬΄μ¨ μΌμ΄ λ°μν κΉ
μλ²μμ CPU μ¬μ©λ₯ μ΄ μμΉνλ©΄ μ¬λ¬ κ°μ§ λ¬Έμ κ° λ°μν μ μμ΅λλ€. μ΄λ¬ν λ¬Έμ λ€μ μλ²μ μ±λ₯ μ νλ‘ μ΄μ΄μ§ μ μμΌλ©°, μ΄λ μ¬μ©μ κ²½νμ μ§μ μ μΈ μν₯μ λ―ΈμΉ©λλ€. λ€μμ CPU μ¬μ©λ₯ μμΉμΌλ‘ μΈν΄ λ°μν μ μλ μ£Όμ λ¬Έμ λ€μ
λλ€:
1. μλ΅ μκ° μ¦κ°: CPUκ° κ³ΌλΆν μνμΌ λ, μμ²μ μ²λ¦¬νλ λ° λ μ€λ μκ°μ΄ 걸립λλ€. μ΄λ μΉ μ ν리μΌμ΄μ
μ μλ΅ μκ°μ΄ μ¦κ°νμ¬ μ¬μ©μμκ² λλ¦° κ²½νμ μ 곡ν©λλ€.
2. μ€λ λ κ²½μ: Tomcatμ λ€μ€ μ€λ λλ₯Ό μ¬μ©νμ¬ μμ²μ μ²λ¦¬ν©λλ€. CPUκ° κ³ΌλΆν μνμΌ λ, μ€λ λ κ°μ κ²½μμ΄ λ°μν μ μμΌλ©°, μ΄λ μ±λ₯ μ νμ μλ΅ μκ° μ¦κ°λ‘ μ΄μ΄μ§ μ μμ΅λλ€.
3. 리μμ€ λΆμ‘±: CPU μ¬μ©λ₯ μ΄ λμΌλ©΄ λ€λ₯Έ μμ€ν
리μμ€(λ©λͺ¨λ¦¬, λμ€ν¬ I/O λ±)λ μν₯μ λ°μ μ μμ΅λλ€. μ΄λ μ 체 μμ€ν
μ±λ₯μ λΆμ μ μΈ μν₯μ λ―ΈμΉ μ μμ΅λλ€.
4. GC(κ°λΉμ§ 컬λ μ
) λ¬Έμ : Java μ ν리μΌμ΄μ
μμλ λ©λͺ¨λ¦¬ κ΄λ¦¬λ₯Ό μν΄ κ°λΉμ§ 컬λ μ
μ΄ μνλ©λλ€. CPUκ° κ³ΌλΆν μνμΌ λ, κ°λΉμ§ 컬λ μ
μ΄ μμ£Ό λ°μνκ³ μ€λ 걸릴 μ μμΌλ©°, μ΄λ μ ν리μΌμ΄μ
μ±λ₯μ λμ± μ νμν¬ μ μμ΅λλ€.
5. μλ² λ€μ΄νμ: κ·Ήλ¨μ μΈ κ²½μ°, CPU κ³ΌλΆνλ‘ μΈν΄ μλ²κ° μλ΅νμ§ μκ±°λ λ€μ΄λ μ μμ΅λλ€. μ΄λ μλΉμ€ κ°μ©μ±μ μ§μ μ μΈ μν₯μ λ―ΈμΉλ©°, κΈ΄κΈν 볡ꡬ μμ
μ νμλ‘ ν μ μμ΅λλ€.
6. μ΄ μΆμ λ° νλμ¨μ΄ λ¬Έμ : μ§μμ μΈ λμ CPU μ¬μ©λ₯ μ νλμ¨μ΄μ μ΄ μΆμ μ μΌκΈ°ν μ μμΌλ©°, μ΄λ 물리μ μΈ νλμ¨μ΄ μμμΌλ‘ μ΄μ΄μ§ μ μμ΅λλ€.
μ΄λ¬ν λ¬Έμ λ₯Ό μλ°©νκ³ ν΄κ²°νκΈ° μν΄μλ CPU μ¬μ©λ₯ μ λͺ¨λν°λ§νκ³ , μ±λ₯ λ³λͺ© νμμ λΆμνλ©°, νμμ μ ν리μΌμ΄μ
λ° μλ²μ μ΅μ νλ₯Ό μ§ννλ κ²μ΄ μ€μν©λλ€. λν, λΆν λΆμ°μ μν΄ λ‘λ λ°Έλ°μλ₯Ό λμ
νκ±°λ, μλ²λ₯Ό μ€μΌμΌ μμνλ κ²λ κ³ λ €ν μ μμ΅λλ€.
π₯ μ΅μ ν μ€μ
Tomcatμ `server.xml` νμΌμμ `Connector` μ€μ μ μμΆ κ΄λ ¨ μμ±λ€μ μΆκ°νλ κ²μ HTTP μλ΅μ ν¬κΈ°λ₯Ό μ€μ¬ λ€νΈμν¬ λμνμ μ μ½νκ³ , ν΄λΌμ΄μΈνΈ μλ΅ μκ°μ κ°μ νκΈ° μν΄ μ¬μ©λ©λλ€. μ΄λ¬ν μ€μ μ νΉν λμ©λ λ°μ΄ν° μ μ‘μ΄λ λ€νΈμν¬ λμνμ΄ μ νλ νκ²½μμ μ μ©ν©λλ€.
μ€μ μ€λͺ
- compression="on": μλ΅μ μμΆνλλ‘ Tomcatμ μ§μν©λλ€. μμΆμ μ¬μ©νλ©΄ ν΄λΌμ΄μΈνΈμκ² μ μ‘λλ λ°μ΄ν°μ ν¬κΈ°λ₯Ό μ€μ¬μ€λλ€.
- compressionMinSize="2048": μ΅μ μμΆ ν¬κΈ°λ₯Ό μ€μ ν©λλ€. 2048 λ°μ΄νΈ μ΄μμΈ μλ΅λ§ μμΆν©λλ€. μμ λ°μ΄ν°λ μμΆ ν¨μ¨μ΄ λ¨μ΄μ§κΈ° λλ¬Έμ μ΅μ ν¬κΈ°λ₯Ό μ§μ νλ κ²μ΄ μ’μ΅λλ€.
- noCompressionUserAgents="": νΉμ μ¬μ©μ μμ΄μ νΈμ λν΄ μμΆμ λΉνμ±νν©λλ€. μ¬μ©μ μμ΄μ νΈκ° μμ²ν λλ μμΆνμ§ μμ΅λλ€. μΌλΆ μ€λλ λΈλΌμ°μ λ μμΆλ λ°μ΄ν°λ₯Ό μ λλ‘ μ²λ¦¬νμ§ λͺ»ν μ μκΈ° λλ¬Έμ
λλ€.
- compressableMimeType="application/json": μμΆν MIME νμ
μ μ§μ ν©λλ€. μ¬κΈ°μλ "application/json" νμ
μ μλ΅λ§ μμΆν©λλ€. λ€λ₯Έ νμ
μ μλ΅μ μμΆνμ§ μμ΅λλ€.
μ΄λ€ μν©μμ μ¬μ©νλμ?
1. λκ·λͺ¨ λ°μ΄ν° μ μ‘: λκ·λͺ¨ JSON λ°μ΄ν°λ λ€λ₯Έ ν
μ€νΈ κΈ°λ° λ°μ΄ν° μ μ‘ μ μ μ©ν©λλ€. μμΆμ ν΅ν΄ λ°μ΄ν° ν¬κΈ°λ₯Ό μ€μ΄λ©΄ λ€νΈμν¬ νΈλν½μ μ€μ΄κ³ μ μ‘ μκ°μ λ¨μΆν μ μμ΅λλ€.
2. λμν μ μ½: λ€νΈμν¬ λμνμ΄ μ νλ νκ²½μμ μμΆμ ν΅ν΄ λ λ§μ λ°μ΄ν°λ₯Ό μ μ‘ν μ μμ΅λλ€. μ΄λ νΉν λͺ¨λ°μΌ λ€νΈμν¬λ λλ¦° μΈν°λ· μ°κ²°μμ μ€μν©λλ€.
3. μλ² μ±λ₯ μ΅μ ν: μλ²μ ν΄λΌμ΄μΈνΈ κ°μ λ°μ΄ν° μ μ‘ μκ°μ μ€μ¬ μ 체 μ±λ₯μ κ°μ ν μ μμ΅λλ€. μμΆμ μλ²μ CPUλ₯Ό μ¬μ©νμ§λ§, λ€νΈμν¬ λμν μ μ½μΌλ‘ μΈν΄ μ 체 μ±λ₯μ΄ ν₯μλ μ μμ΅λλ€.
μ΅μ ν μν©
1. λ°μ΄ν° μμΆ: μ§μ λ 쑰건μ λ§λ λͺ¨λ HTTP μλ΅ λ°μ΄ν°κ° μμΆλ©λλ€. μ΄λ λ°μ΄ν° μ μ‘λμ μ€μ΄κ³ , ν΄λΌμ΄μΈνΈκ° λ°μ΄ν°λ₯Ό λ λΉ λ₯΄κ² λ°μ μ μκ² ν©λλ€.
2. CPU μ¬μ© μ¦κ°: μμΆ μμ
μ CPUλ₯Ό μΆκ°λ‘ μ¬μ©ν©λλ€. λ°λΌμ, μλ²μ CPU λΆνκ° μ¦κ°ν μ μμ΅λλ€. νμ§λ§ λλΆλΆμ κ²½μ° λ€νΈμν¬ I/O κ°μλ‘ μΈν΄ μ 체 μμ€ν
μ±λ₯μ΄ κ°μ λ©λλ€.
3. νΈνμ± λ¬Έμ : νΉμ μ¬μ©μ μμ΄μ νΈκ° μμΆλ λ°μ΄ν°λ₯Ό μ²λ¦¬νμ§ λͺ»ν κ²½μ° λ¬Έμ κ° λ°μν μ μμ΅λλ€. μ΄λ₯Ό λ°©μ§νκΈ° μν΄ `noCompressionUserAgents` μ€μ μ ν΅ν΄ νΈνλμ§ μλ μμ΄μ νΈμ λν΄μλ μμΆμ λΉνμ±νν μ μμ΅λλ€.
κ²°λ‘
μμΆ μ€μ μ ν΅ν΄ λ€νΈ μν¬ λμνμ μ μ½νκ³ , μλ΅ μκ°μ μ€μΌ μ μμ§λ§, CPU λΆνκ° μ¦κ°ν μ μμ΅λλ€. λ°λΌμ μλ²μ μ±λ₯κ³Ό λ€νΈμν¬ νκ²½μ κ³ λ €νμ¬ μ μ ν μ€μ νλ κ²μ΄ μ€μν©λλ€.
π₯ μμ κ°μ μ€μ μΌλ‘ μ΅μ νκ° λ κΉ?
Tomcatμμ μμΆμ νμ±ννλ©΄ λ€νΈμν¬ λμν μ μ½κ³Ό μλ΅ μκ° λ¨μΆμ μ₯μ μ΄ μμ§λ§, CPU μ¬μ©λ₯ μ΄ μ€νλ € μ¦κ°ν μ μμ΅λλ€. μμΆ μμ
μμ²΄κ° CPUμ λΆλ΄μ μ£ΌκΈ° λλ¬Έμ
λλ€. λ°λΌμ μμΆ μ€μ μ΄ CPU μμΉμ λ§μμ£Όλ κ²μ μλλ©°, μ€νλ € λ€μκ³Ό κ°μ μν©μμ CPU μ¬μ©λ₯ μ΄ μμΉν μ μμ΅λλ€:
1. λ°μ΄ν° μμΆ μμ
: μμΆμ CPU μ§μ½μ μΈ μμ
μ
λλ€. μμΆμ νμ±ννλ©΄ μλ²κ° κ° μλ΅μ μμΆνκΈ° μν΄ λ λ§μ CPU 리μμ€λ₯Ό μ¬μ©νκ² λ©λλ€.
2. λμ©λ λ°μ΄ν° μ²λ¦¬: μμΆν λ°μ΄ν°μ μμ΄ λ§μμλ‘ CPU μ¬μ©λ₯ μ΄ λ λμμ§λλ€.
μμΆμ νμ±ννλ μ€μ μ λ€νΈμν¬ λμν μ μ½ λ° ν΄λΌμ΄μΈνΈ μλ΅ μκ° κ°μ μ λͺ©νλ‘ νμ§λ§, μλ²μ CPU λΆνλ₯Ό μ¦κ°μν¬ μ μλ€λ μ μ κ³ λ €ν΄μΌ ν©λλ€.
μμΈ λΆμ λ° ν΄κ²° λ°©λ²
μμΆμ μ¬μ©νλ©΄μλ CPU μ¬μ©λ₯ μ κ΄λ¦¬νλ €λ©΄ λ€μκ³Ό κ°μ μΆκ°μ μΈ λ°©λ²λ€μ κ³ λ €ν΄λ³Ό μ μμ΅λλ€
1. μ μ ν μμΆ μμ€ μ€μ :
- μμΆ μμ€μ μ‘°μ νμ¬ CPU μ¬μ©λ₯ κ³Ό μμΆ ν¨μ¨ κ°μ κ· νμ λ§μΆ₯λλ€. μμΆ μμ€μ΄ λμμλ‘ λ λ§μ CPUλ₯Ό μ¬μ©νμ§λ§, λ°μ΄ν° ν¬κΈ°λ₯Ό λ λ§μ΄ μ€μΌ μ μμ΅λλ€.
2. μμΆν MIME νμ μ ν:
- κΌ νμν λ°μ΄ν° νμ λ§ μμΆνμ¬ λΆνμν CPU μ¬μ©μ μ€μ λλ€. μλ₯Ό λ€μ΄, ν μ€νΈ κΈ°λ° λ°μ΄ν°(JSON, XML λ±)λ§ μμΆνκ³ μ΄λ―Έμ§λ λμμ νμΌμ μμΆνμ§ μμ΅λλ€.
3. μλ² λ¦¬μμ€ λͺ¨λν°λ§ λ° μ‘°μ :
- μλ²μ CPU μ¬μ©λ₯ μ μ§μμ μΌλ‘ λͺ¨λν°λ§νκ³ , νμμ μλ² λ¦¬μμ€λ₯Ό νμ₯ν©λλ€. μλ₯Ό λ€μ΄, λ λ§μ CPU μ½μ΄λ₯Ό μΆκ°νκ±°λ μ¬λ¬ μλ²λ‘ λΆνλ₯Ό λΆμ°ν©λλ€.
4. μΊμ± μ¬μ©:
- μμ£Ό μμ²λλ λ°μ΄ν°μ λν΄ μΊμ±μ μ¬μ©νμ¬ μμΆ μμ μ μ€μ λλ€. μΊμλ λ°μ΄ν°λ μμΆλ μνλ‘ μ μ₯νμ¬ μ¬μ¬μ©ν μ μμ΅λλ€.
5. λ€λ₯Έ μ±λ₯ μ΅μ ν κΈ°λ² μ μ©:
- λ°μ΄ν°λ² μ΄μ€ 쿼리 μ΅μ ν, λ©λͺ¨λ¦¬ κ΄λ¦¬, μ ν리μΌμ΄μ λ‘μ§ κ°μ λ± λ€λ₯Έ μ±λ₯ μ΅μ ν κΈ°λ²μ ν¨κ» μ μ©νμ¬ μ 체μ μΈ μλ² λΆνλ₯Ό μ€μ λλ€.
κ²°λ‘
Tomcatμ μμΆ μ€μ μ λ€νΈμν¬ λμν μ μ½κ³Ό ν΄λΌμ΄μΈνΈ μλ΅ μκ° λ¨μΆμ μ 리νμ§λ§, μλ²μ CPU μ¬μ©λ₯ μ μ¦κ°μν¬ μ μμ΅λλ€. μμΆμ ν΅ν΄ CPU μμΉμ μ§μ μ μΌλ‘ λ§μ μλ μμΌλ©°, μ€νλ € CPU λΆνλ₯Ό μ¦κ°μν¬ μ μκΈ° λλ¬Έμ, μλ² λ¦¬μμ€λ₯Ό ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκ³ λ€λ₯Έ μ±λ₯ μ΅μ ν λ°©λ²λ€μ ν¨κ» μ μ©νλ κ²μ΄ μ€μν©λλ€.
'μ΄μ' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μ΄μ] JVM λ©λͺ¨λ¦¬ μ€μ , μ μ€μν κΉ? (0) | 2025.03.12 |
---|---|
[μ΄μ] λΉλκΈ° μ²λ¦¬μ Thread Poolμ νμ©ν API μ±λ₯ μ΅μ ν (0) | 2025.01.30 |
μΊμ(Cache) μ λ΅ (0) | 2025.01.11 |
[λ¨μ ν μ€νΈ] λ°±μλ ν μ€νΈ μλν: λ¨μ ν μ€νΈλΆν° ν΅ν© ν μ€νΈκΉμ§ (0) | 2024.09.20 |
[μ΄μ] cpu μμΉκ³Ό νΈλμμ κ³Ό μ°κ΄μ± (2) | 2024.06.16 |