[κ΅¬λ¦ Commit μ°Έμ νκΈ°] βν΄λ¦° μ½λβκ° μ½λμ λν μ± μ΄ μλ μ¬μ€μ λν΄
μ± μ μ½κΈ° μ , μ μΈμ μ λ£κ³ νκΈ°λ₯Ό μμ±νμμ΅λλ€. κ°λ΅ μμ½νμλ©΄ ν΄λ¦°μ½λλ§μ΄ μ λ΅μ μλλΌλ κ²μ΄λ©° κΈ°λ²μ κΆκ³ μ λλ‘ μΈμ§νκ³ μ½λ κ²μ΄ μ’λ€λ κ²μ κΉ¨λ¬μμ΅λλ€.
- μ½λμ μ’ λ§μ΄ λ₯μ³€λ€λλ, μ½λλ₯Ό μλμΌλ‘ μμ±νλ€λλ ν΄λ μμΌλ‘ μ½λκ° μ¬λΌμ§ κ°λ§μ μ λ μλ€.
- μ½λμ λμμμ΄ μꡬμ¬νμ μμΈν(μ λ°ν) ννν μ μκΈ° λλ¬Έ.
- μΌνΈλ°±μ ꡬνν¨ν΄ :
μ’μ μ½λκ° μ€μνλ€λ λ€μ λ―Έμ½ν μ μ μ κΈ°λ°νλ€
- μ΄ μ± μ μ΄μ λμνμ§ μλλ€.
- κΈ°νμ μ§ν€κΈ°μν΄ λ§κ΅¬μ‘μ΄λ‘ μμ±ν λμ μ½λλ μ΄λ°μ λΉ λ₯Όμ§μΈμ , λμ€μ κ°λ° μλλ₯Ό ν¬κ² λ¨μ΄λ¨λ¦°λ€.
- μ½νκ³ μ€ν¨ μ½λλ₯Ό ν΄μνκ³ λνλ€ β κ°λ¨ν λ³κ²½ λΆκ°λ₯
- μΌμ μ΄ μ΄λ°ν΄μ μ λλ‘ ν μκ°μ΄μλ€. λ©μ²ν κ΄λ¦¬μμ μ‘°κΈν κ³ κ° νμ΄λ€. κ³Όμ°?
- κ°λ°μλ νλ‘μ νΈ κ³ν κ³Όμ μ κΉμν κ΄μ¬νλ―λ‘ νλ‘μ νΈ μ€ν¨, νΉν λμμ½λλ‘ μ΄λνλ μ€ν¨μ μ± μμ΄ ν¬λ€.
- λμ μ½λμ μνμ μ΄ν΄νμ§ λͺ»νλ κ΄λ¦¬μλ₯Ό κ·Έλλ‘ λ°λ₯΄λ건 μ λ¬Έκ° λ΅μ§ λͺ»νλ€.
- λμ μ½λλ₯Ό μμ°νλ©΄ κΈ°νμ λ§μΆμ§ λͺ»νλ€. β μ€νλ € μλ§μΉμ°½μΈ μνλ‘ μλκ° λ¦μ΄μ§.
- μΈμ λ μ½λλ₯Ό κΉ¨λνκ² μ μ§νλ μ΅κ΄μ΄ λ°©λ²μ΄λ€.
λ Έλ ¨ν νλ‘κ·Έλλ¨Έλ€μ λ€μν μ μκ° μ‘΄μ¬νλ€.
λλ μ°μνκ³ ν¨μ¨μ μΈ μ½λλ₯Ό μ’μνλ€.
- μ°μν μ½λ : μΈμμ΄λ νλκ° κΈ°ν μκ³ λ¨μνλ©° 보기μ μ¦κ±°μ΄ μ½λ
- ν¨μ¨μ μΈ μ½λ : λ¨μ μλλ§μ λ»νμ§ μμΌλ©°, CPUμ μμμ λλΉνμ§ μλ μ½λ
μ±λ₯μ μ΅μ μΌλ‘ μ μ§ν΄μΌ μ¬λλ€μ΄ μμΉμλ μ΅μ νλ‘ μ½λλ₯Ό λ§μΉλ €λ μ νΉμ λΉ μ§μ§ μλλ€.
- λμμ½λλ λμμ½λλ₯Ό μ νΉνλ€. κ³ μΉλ©΄μ μ€νλ € λ λμ μ½λλ₯Ό λ§λ λ€.
μ€λ₯λ λͺ
λ°±ν μ λ΅μ μκ±°ν΄ μ² μ ν μ²λ¦¬νλ€.
- μ² μ νκ² μ€λ₯ μ²λ¦¬λ μ½λ : λ©λͺ¨λ¦¬ λμ, race condition, μΌκ΄μ± μλ λͺ λͺ λ² λ± μΈμΈν μ¬νκΉμ§ κΌΌκΌΌνκ² μ²λ¦¬νλ μ½λ
κΉ¨λν μ½λλ νκ°μ§λ₯Ό μ λλ‘ νλ€.
- κΉ¨λν μ½λ : λ무 λ§μ μΌμ νλ € μ μ°μ§ λ§κ³ νκ°μ§ μΌμ μ§μ€νλ μ½λ
- κ° ν¨μμ ν΄λμ€μ λͺ¨λμ μ£Όλ³ μν©μ ννΉλκ±°λ μ€μΌλμ§ μλ μ± νκΈΈλ§ κ±·μ.
κΉ¨λν μ½λλ μ μ΄ λ¬Έμ₯μ²λΌ μ½νλ€.
- κ°λ μ± : ν΄κ²°ν λ¬Έμ μ ν΄λ²μ λͺ λ°±ν μ μνκ³ νμ΄μΌνλ€.
κΉ¨λν μ½λλ κ²°μ½ μ€κ³μμ μλλ₯Ό μ¨κΈ°μ§ μλλ€. μ€νλ € λͺ
μΎν μΆμνμ λ¨μν μ μ΄λ¬ΈμΌλ‘ κ°λνλ€.
- μ½λλ μ¬μ€μ κΈ°λ°νλ©°, νμν λ΄μ©λ§ λ΄μμΌνλ€.
κΉ¨λν μ½λλ μμ±μκ° μλ μ¬λλ μ½κΈ° μ½κ³ κ³ μΉκΈ° μ½λ€.
- μ€μ λ‘ μ½κΈ° μ¬μ΄μ½λμ κ³ μΉκΈ° μ¬μ΄ μ½λλ λ€λ₯΄λ€.
λ¨μν
μ€νΈμΌμ΄μ€μ μΈμν
μ€νΈμΌμ΄μ€κ° μ‘΄μ¬νλ€.
- ν μ€νΈ μΌμ΄μ€κ° μλ μ½λλ μ무리 κ°λ μ±μ΄ λμλ κΉ¨λνμ§ μλ€.
κΉ¨λν μ½λλ μΈμ λ λκ΅°κ° μ£Όμ κΉκ² μ§°λ€λ λλμ μ€λ€.
- κΉ¨λν μ½λ : μκ°μ λ€μ¬ κΉλνκ³ λ¨μ νκ² μ 리ν μ½λ
**μΌνΈ 벑μ μ½λ κ·μΉ**
- λͺ¨λ ν
μ€νΈλ₯Ό ν΅κ³Όνλ€.
- **μ€λ³΅**μ΄ μλ€.
- μμ€ν
λ΄ λͺ¨λ μ€κ³ μμ΄λμ΄λ₯Ό νννλ€.
- ν΄λμ€, λ©μλ, ν¨μ λ±μ μ΅λν μ€μΈλ€.
κ²°λ‘ : μ€λ³΅ μ€μ΄κΈ°, νκΈ°λ₯λ§ μννκΈ°, μ λλ‘ νν(μλ―Έμλ μ΄λ¦)νκΈ°, μκ² μΆμννλΌ.
μ½λλ₯Ό μ½μΌλ©΄μ μ§μνλ κΈ°λ₯μ κ° λ£¨ν΄μ΄ κ·Έλλ‘ μννλ€λ©΄ κΉ¨λν μ½λλΌ λΆλ¬λ λκ² λ€.
- κΉ¨λν μ½λλ μ½μΌλ©΄μ λλμΌμ΄ μμ΄μΌνλ€.
- μ§μν λλ‘ λμκ°λ μ½λκ° κΉ¨λν μ½λμ΄λ€.
- μ°λ¦¬λ μμ½λλ₯Ό μ§λ©΄μ λμμμ΄ κΈ°μ‘΄ μ½λλ₯Ό μ½λλ€.
- λ°λΌμ μ½κΈ° μ¬μ΄ μ½λλ λ§€μ° μ€μνλ©°, μ½κΈ° μ½κ² λ§λ€λ©΄ μ§κΈ°λ μ¬μμ§λ€.
μΊ νμ₯μ μ²μ μμ λ λ³΄λ€ λ κΉ¨λνκ² ν΄λκ³ λ λλΌ
- 체ν¬μμν λλ³΄λ€ μ’ λ κΉ¨λν μ½λλ₯Ό 체ν¬μΈνμ.
- λ³μμ΄λ¦νλλ₯Ό κ°μ νκ³ , μ‘°κΈ κΈ΄ ν¨μ νλλ₯Ό λΆν νκ³ , μ½κ°μ μ€λ³΅μ μ κ±°νκ³ , 볡μ‘ν ifλ¬Έμ μ 리νμ. μ΄μ λλ©΄ μΆ©λΆ.
μκ°μ΄ μ§λ μλ‘ μ½λκ° μ’μμ§λ νλ‘μ νΈλ₯Ό λ§λ€μ.
μ΄ μ± μ μ€λΈμ νΈ λ©ν μ§μμ΄ μκ°νλ κΉ¨λν μ½λλ₯Ό μ€λͺ νλ€. μ΄ μ± μ μ½λλ€κ³ λ°μ΄λ νλ‘κ·Έλλ¨Έκ° λλ€λ 보μ₯μ μμΌλ©°, λ°μ΄λ νλ‘κ·Έλλ¨Έκ° μκ°νλ λ°©μκ³Ό μ¬μ©νλ κΈ°μ , κΈ°κ΅, λꡬλ₯Ό μκ°νκ³ κΆκ³ νλ€.