λμ©λ νΈλν½μ λμνλ μλΉμ€λ₯Ό μ΄μ μ€μ΄λ€. Nλ κ° μ μμ μΌλ‘ λμνκ³ μμκ³ , μ΄μμ΄ μμλ€. κ·Έλ°λ° μ§λμ£Όμ μ°μ°ν 502 μλ¬κ° λ¨λ©΄μ API νΈμΆμ΄ μ μμ μΌλ‘ λμ§ μλ μ΄μλ₯Ό λ°κ²¬νλ€. μλ² μ€μΌμΌ μμμΌλ‘ μ²λ¦¬νκ³ , λ¬Έμ κ° ν΄κ²°λλ€κ³ μκ°νμΌλ, κΈμΌ, μλ²½ 6μκ²½ λͺ°λ¦¬λ νΈλν½μΌλ‘ κ°μ μ΄μκ° λ°μνκ³ , κ·Όλ³Έμ μΈ λ¬Έμ ν΄κ²°μ΄ νμν κ² κ°λ€λ μ§λ¨μ λ΄λ Έλ€.
λ€μ΄λ² ν΄λΌμ°λ νλ«νΌμ μ¬μ©νκ³ μμκ³ , λ‘λ λ°Έλ°μ(Auto Scaling), Nginx, PM2 μλ²λ‘ μ΄μ΄μ§λ νλ‘μΈμ€λ₯Ό ν΅ν΄ λ°±μλλ₯Ό ꡬμΆνλ€. κ°νμ μΌλ‘ λ°μνλ 502 μλ¬μ nginx, error.logμ μ°νλ 99, 110, 111 μλ¬λ₯Ό νμΈνκ³ , νΉμ, nginx μ€μ μ μ΄μκ° μμκΉλ₯Ό μμ¬νλ©° ν΄λΉ μλ¬κ° λ¨μ§ μλλ‘ μ‘°μΉλ₯Ό μ·¨νκ³ μ λ Έλ ₯νλ€. λ°λλ‘, nginx μ€μ μ΄ μ΄μκ° μμλ€λ©΄, μ μ΄μ λμνμ§ μκ±°λ μ΄λ κ² μ€λ«λμ μ μ§κ° λ μΌμ΄ μμ κ² κ°λ€λ μλ¬Έμ λμμ νκ³ μμλ€. μμλ, κΈ°μ‘΄ μ€μ μ ν¬κ² λ¬Έμ κ° μμκ³ , ν μ€νΈλ₯Ό μν μ€μ λ³νμλ μ¬μ ν κ°μ μ΄μκ° λ°μνλ€.
μ΄μ¨λ , 502μλ¬λ λΆνλ‘ λ°μν κ²μ΄λΌλ λ§₯λ½μ μμ§ μμΌλ©° λ€μ μλ₯Ό κ³ λ―Όνλ€. κ²°λ‘ μ μΌλ‘, νΈλν½ μ¦λλ‘ μΈν LBμμ Nginxλ‘ κ°λ κΈΈ λλ, Nginxμμ νλ‘μ ν¨μ€λ₯Ό ν΅ν΄ μ€μλ²λ‘ κ°λ κΈΈ μ΄ λ κΈΈ μ€μ μ΄μκ° μλ 건 λΆλͺ νλ€. κ·Έλμ, LBλ₯Ό κ΅μ²΄ν΄ 보μμΌλ μ€ν¨, κ·Έλμ, 99λ² μλ¬λ₯Ό 보λ μ€, μ°μ°ν μ΄λ€ ν ν¬μ€ν μ λ°κ²¬νλ€. TIME_WAITμΌλ‘ μΈν Local Port κ³ κ° λ¬Έμ λ₯Ό λ€λ£¬ ν΄λΉ κΈμ ν λλ‘, νΈλνΉμ μμνκ³ , κ°μ μ΄μκ° μμμ νμΈνλ€.
$ echo "10240 65535" > /proc/sys/net/ipv4/ip_local_port_range
$ sudo sysctl -w "net.ipv4.tcp_timestamps=1"
$ sudo sysctl -w "net.ipv4.tcp_tw_reuse=1"