π μ΄ κΈμ μΈνλ°μμ μ 곡νλ "λκ·λͺ¨ νΈλν½ μ²λ¦¬λ₯Ό μν λΆν ν μ€νΈ μ λ¬Έ/μ€μ " κ°μλ₯Ό μκ°νλ©΄μ μ 리ν λ΄μ©μ λ°νμΌλ‘ μμ±ν κΈμ λλ€.
λκ·λͺ¨ νΈλν½ μ²λ¦¬λ₯Ό μν λΆνν μ€νΈ μ λ¬Έ/μ€μ κ°μ | JSCODE λ°μ¬μ± - μΈνλ°
JSCODE λ°μ¬μ± | , [μ¬μ§]π€¬ μλΌμ΄, λͺ» ν΄λ¨Ήκ² λ€!λΉμ 곡μλ‘ κ°λ°μ μμν΄ μ¬λ¬ νμ¬μμ CTOλ‘ νλνλ€κ°, νμ¬λ κ΅μ‘μλ‘ νλνκ³ μλ λ°μ¬μ±μ΄λΌκ³ ν©λλ€. μ λ λΉμ 곡μλ‘ κ°λ°μ μμ
www.inflearn.com
νΈλν½ μ¦κ°μ λ°λ₯Έ μμ€ν μ€κ³ λ° νμ₯ λ°©λ²
λ³λͺ©μ§μ μ΄ μ΄λμ λ°μνλλμ λ°λΌ μ±λ₯ κ°μ μ λ°©λ²μ΄ λ¬λΌμ§λ€.
μ΄ λ°©λ²μ λν΄ λλ΅μ μΌλ‘ μλ©΄ μ±λ₯ κ°μ μ μμνκ² ν μ μλ€.
β κ°μ₯ κ°λ¨ν νν
μ κ·Έλ¦Όμ EC2 μλ² ν λμ FE, BE, DB κ΄λ ¨ νλ‘κ·Έλ¨μ λ€ μ€νμν€λ ννμ ꡬμ±μ΄λ€.
μ₯μ μ νλμ μλ²μμ 리μμ€κ° λ€ μμ΄μ κ΄λ¦¬ / μ‘°μμ΄ μ½λ€.
νμ§λ§ μ΄ κ΅¬μ±μΌλ‘μΈν΄ μ€μ μλΉμ€λ₯Ό μ΄μνλ€ λ³΄λ©΄ DB κ° μκ°λ³΄λ€ λ§μ μ»΄ν¨ν μμ(CPU, λ©λͺ¨λ¦¬,λμ€ν¬)λ₯Ό μ¬μ©νλ€. DBλ‘ μΈν΄ μ±λ₯μ μ μν₯μ μ€ μ μκΈ° λλ¬Έμ λ³λμ μλ²λ₯Ό λΆλ¦¬νλ €λ νμμ λ§μ΄ κ°μ§λ€.
β DB λΆλ¦¬
μΉ μλ²μ DBλ₯Ό λΆλ¦¬ν μΈνλΌ κ΅¬μ±
νΈλν½μ΄ λ§μμ§λ©΄ μ μ νμΌμ μ 곡νλ λΆλΆμμ λ¬Έμ κ° λ κ°λ₯μ±μ΄ ν¬λ€.
μΌλ°μ μΌλ‘ μ μ νμΌμ μ©λμ΄ ν¬κΈ° λλ¬Έμ μ»΄ν¨ν μμμ λ§μ΄ μλͺ¨ν΄μ μλ²μ κ³ΌλΆνκ° κ±Έλ¦΄ κ°λ₯μ±μ΄ ν¬λ€.
μ΄λ₯Ό ν΄κ²°νκΈ° μν΄ μ μ νμΌμ μ 곡νλ μλ²λ§ λ³λλ‘ λΆλ¦¬νλ ꡬμ±μ λ§μ΄ κ°λλ€.
β μ μ νμΌ μλ² λΆλ¦¬
S3λ₯Ό νμ©ν΄ μ μ νμΌλ§μ μ 곡νλ λ³λμ μλ²λ₯Ό ꡬμΆνλ€.
νμ§λ§ μ μ νμΌμ μ©λμ΄ ν° κ²½μ°κ° λ§κΈ° λλ¬Έμ, μ μ νμΌμ μ 곡λ°λ κ³³μ΄λ κ±°λ¦¬κ° λ©λ©΄ λ©μλ‘ μλ΅ μλκ° μ€λ 걸릴 μ λ°μ μλ€.
μ΄λ₯Ό ν΄κ²°νκΈ° μν΄ μΊμ±μ μλ¦¬κ° μ μ©λ CDNμ νμ©ν΄μ μ μ νμΌ μ μ‘ μλλ₯Ό ν₯μμν¨λ€.
β CDN μλ² νμ©
μ΄μ S3μ λ°λ‘ μ μν΄μ νμΌμ λ°μμ€λ κ²μ΄ μλλΌ CloudFront λ₯Ό ν΅ν΄ κ°κΉμ΄ μμμ μ₯μμμ νμΌμ κ°μ Έμ€κ² λλ€.
μ΄λ²μλ μ¬μ©μκ° λ§μμ Έ EC2κ° λ³λͺ©μ§μ μ΄ λμλ€. μ΄ κ²½μ°μλ EC2λ₯Ό νμ₯ν΄μΌ νλ€ (μμ§μ νμ₯ vs μνμ νμ₯)
λ³΄ν΅ μμ€ν μ΄μ€νμ μ₯μ λλ¬Έμ EC2λ₯Ό νμ₯ν λλ μνμ νμ₯μ λ°©μμ λ§μ΄ νμ©νλ€.
β μΉ μ ν리μΌμ΄μ μλ²μ μνμ νμ₯
EC2 μλ²λ₯Ό μ¬λ¬λλ‘ λλ Έμ§λ§ μ¬μ©μλ³΄κ³ μ¬λ¬ μλ²μ κ³¨κ³ λ£¨ μμμ μμ²μ 보λ΄λΌκ³ μν¬ μμλ€.
μ¬μ©μμ μμ²μ μ¬λ¬λμ μΉ μ ν리μΌμ΄μ μλ²μ κ³¨κ³ λ£¨ μ λ¬νκΈ° μν μ₯μΉκ° νμνλ€. λ‘λλ°Έλ°μλ₯Ό λμ ν΄λ³΄μ.
β λ‘λ λ°Έλ°μ λμ
λ‘λ λ°Έλ°μμ λμ μΌλ‘ μ¬λ¬λμ EC2μ κ³¨κ³ λ£¨ νΈλν½μ λΆμ°μν¬ μ μκ² λλ€.
κ·Έλ¬λ λμ΄λ μΉ μ ν리μΌμ΄μ μλ²μ λ°λΌ λ§μ μμ μμ²μ΄ DBμ λͺ°λ¦¬κ² λλ€.
DB λ³λͺ©νμ λ°μ μ 1οΈβ£ DB μ체μ μΌλ‘ μ±λ₯ κ°μ ν μ μλ λΆλΆμ μλμ§λ₯Ό λ¨Όμ κ³ λ €νλ€.
- μΈλ±μ€ νμ©
- μμ κ·ν
- SQL νλ
μ΄ λ°©μμΌλ‘ μ΅λν κ°μ νλλ°λ DB μ λ³λͺ© νμμ΄ λ°μνλ©΄ 2οΈβ£ μνμ νμ₯ λ°©μμ κ³ λ €νλ€.
μ μμ§μ νμ₯ λ°©μμ΄ μλκ³ μνμ νμ₯λ°©μμΌκΉ ?
DBλ₯Ό μ¬λ¬κ° λλ€λ©΄(μνμ νμ₯) λͺ¨λ DBμ λ°μ΄ν°λ₯Ό 볡μ¬ν΄μ κ΄λ¦¬ν΄μΌ νλ€.
κ·ΈλΌ λ°μ΄ν° λ³κ²½μ΄ μΌμ΄λ λλ§λ€ μ¬λ¬λμ DB κ° λκΈ°ν μμ μ ν΄μΌνλ€.
λκΈ°ν μμ μ DB μ±λ₯ μ νλ₯Ό μ λ°νμ¬ μ₯μ λ³΄λ€ λ¨μ μ΄ λ ν° νμ₯ λ°©μμ΄λΌκ³ μκΈ°λ₯Ό νλ νΈμ΄λ€ (DB λ₯Ό λ리면 λ릴μλ‘ λκΈ°ννλλ° μκ°μ΄ λ μ€λ κ±Έλ €μ κ²°κ³Όμ μΌλ‘λ ν¬κ² κ°μ λμ§ μμ. κ·Έλ¦¬κ³ λ¬Έμ λ λ λ§μ΄ λ°μν¨) μ΄λ° μ΄μ λλ¬Έμ μνμ νμ₯ λ°©μ λ³΄λ€ μμ§μ νμ₯μ λ°©μμΌλ‘ μ±λ₯μ κ°μ νλ€.
1οΈβ£ , 2οΈβ£ μ΄νμλ μΆκ°μ μΈ μ±λ₯ κ°μ μ΄ νμνλ€λ©΄ 3οΈβ£ μ½κΈ°μ μ© DB(Read Replica) λμ μ κ³ λ €νλ€.
β μ½κΈ°μ μ© λ°μ΄ν°λ² μ΄μ€(Read Replica) λμ
μ λ°ν λ°μ΄ν° λκΈ°νκ° νμμλ 쿼리λ₯Ό μ€νμν¬λ μ½κΈ° μ μ© DBλ₯Ό λ§μ΄ νμ©νλ€.
γ΄ μ λ°ν λ°μ΄ν° λκΈ°νκ° νμμλ 쿼리λ ?
γ΄ μλ₯Ό λ€μ΄, κ²μκΈμ μμ±νκ³ λμ μμ±λ κ²μκΈμ λ°λ‘ λ³΄μ§ μμΌλ©΄ ν°μΌλλ ? κ·Έλ μ§ μλ€. κ²μκΈ μμ± ν 10μ΄ μλ€κ° κΈμ λ΄λ ν° λ¬Έμ κ° μλ€. μ΄λ° λ°μ΄ν°μ κ²½μ° μ½κΈ° μ μ© DB λ₯Ό μ¬μ©νλ κ²μ΄λ€.
μ΄ κ°μ λ°©μμΌλ‘ DBλ₯Ό μ¬μ©νλ€λ³΄λ©΄ λΉμ©μ΄ λ¬Έμ κ° λλ€. AWS μ RDSλ λΉμΌ μμμ μνκΈ° λλ¬Έμ λΉμ© μ κ°κ³Ό μ±λ₯ ν₯μμ μν΄ μΊμ μλ²λ₯Ό λ§μ΄ νμ©νλ€.
β μΊμ μλ² λμ
λ°μ΄ν°λ² μ΄μ€λ₯Ό νμ₯νκ³ λ°λ‘ λκΈ°ν ν νμ μλ κ²λ€μ μΊμλ₯Ό ν΅ν΄ μ‘°νν μ μλλ‘ λ§λ λ€.
μ΄λ κ² νμ λ μ±λ₯μ λΆνκ° μ€μ΄λ€ μ μλ μ΄μ λ
κΈ°μ‘΄μ 100λ§κ±΄μ μμ² μ²λ¦¬λ₯Ό Master, Replica λκ°μ DBκ° λλ μ μ²λ¦¬λ₯Ό νλ€λ©΄ μ΄μ μΊμ μλ²κ° ν¨κ» λλ μ κ°μ Έκ° μ μκ² λκΈ° λλ¬Έμ΄λ€.
μΊμ μλ²λ₯Ό λμ ν¨μΌλ‘μ λ°μ΄ν° μ‘°ν μμ²μ μλ΅μ DB μλ²μ μΊμ μλ²κ° λλ μ μ²λ¦¬ν μ μκ² λλ€. μ΄μ²λΌ μΊμ μλ²λ₯Ό νμ©νλ©΄ DBμλ² λΆνλ₯Ό μ€μΌ μ μκ³ , μ 체 Throughput μ΄ μ¦κ°νκ² λλ€.
λ³λͺ© μ§μ μ λ°λ₯Έ μ±λ₯ κ°μ λ°©λ²
μμμ μ€λͺ ν μμ€ν μ€κ³ λ° νμ₯ λ°©λ²λ§ μκ³ μμ΄λ μΆ©λΆνλ€.
μ΄λ²μλ λ³λͺ© μ§μ μ κ΄μ μΌλ‘ μ±λ₯ κ°μ λ°©λ²μ μ 리ν΄λ³΄μ
1. EC2 κ° λ³λͺ© μ§μ μΌ κ²½μ°
- μ ν리μΌμ΄μ λ‘μ§μμ λΉν¨μ¨μ μΈ λ‘μ§ κ°μ νκΈ°
- μ μ νμΌ μλ²(S3, CloudFront) λΆλ¦¬νκΈ°
- λ‘λλ°Έλ°μ(ELB) λ₯Ό νμ©ν΄ μνμ νμ₯νκΈ°
- μμ§μ νμ₯νκΈ°
2. RDSκ° λ³λͺ©μ§μ μΌ κ²½μ°
- λΉν¨μ¨μ μΈ μΏΌλ¦¬ κ°μ
- μ½κΈ°μ μ© DB λμ
- μΊμ μλ² λμ
'TEST' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[k6] λ°°ν¬ μ λΆν ν μ€νΈλ‘ μ±λ₯ λ³λͺ© ν΄κ²°νκΈ° β TPS 2λ°° ν₯μ (3) | 2025.06.05 |
---|---|
[TEST] λΆνν μ€νΈ : μ±λ₯ κ°μ μ λ΅ (0) | 2025.05.27 |
[TEST] λΆνν μ€νΈ : λ³λͺ©μ§μ (0) | 2025.05.27 |
[TEST] λΆνν μ€νΈ : k6 Web DashBoard ν΄μνκΈ° (0) | 2025.05.26 |
[TEST] λΆνν μ€νΈ : κΈ°λ³Έ κ°λ (1) | 2025.05.26 |