[10λΆ ν
μ½ν‘] π§²μ½μΌμ Web Socket
μΉμμΌμ΄λ?
- λ νλ‘κ·Έλ¨ κ°μ λ©μμ§λ₯Ό κ΅ννκΈ° μν ν΅μ λ°©λ² μ€ νλ.
- νμ¬ μΈν°λ·νκ²½(HTML5)μμ λ§μ΄ μ¬μ©λλ€.
- μΉ μμΌμ μ§μνλ λΈλΌμ°μ μ κ²½μ° μμΌ νλ‘ν μ½ μ§μ
νΉμ§
- μλ°©ν₯ ν΅μ
- λ°μ΄ν° μ‘μμ μ λμμ μ²λ¦¬ν μ μλ ν΅μ λ°©λ²
- ν΄λΌμ΄μΈνΈμ μλ²κ° μλ‘μκ² μν λ μ£Όκ³ λ°κΈ° κ°λ₯
- ν΅μμ μΈ HTTP ν΅μ μ λ¨λ°©ν₯ ν΅μ .
- μ€μκ° λ€νΈμνΉ
- μΉ νκ²½μμ μ°μλ λ°μ΄ν°λ₯Ό λΉ λ₯΄κ² λ
ΈμΆνλ€.
λμ λ°©λ²
- νΈλ μμ΄νΉ
- νΈλ μμ΄νΉ μ΄ν λ°μ΄ν° μ μ‘
- νλ‘ν μ½μ΄ ws λ‘ λ³κ²½λλ€.
νλ‘ν μ½ νΉμ§
- μ΅μ΄ μ μμλ§ http νλ‘ν μ½ μμμ handshakingμ μ§ννκΈ° λλ¬Έμ http header μ¬μ©
- μΉμμΌμ μν λ³λμ ν¬νΈλ μλ€ -> κΈ°μ‘΄ν¬νΈ μ¬μ©
- νλ μμΌλ‘ ꡬμ±λ λ©μμ§λ‘ μ‘μμ
- λ©μμ§μ ν¬ν¨ λ μμλ κ΅ν κ°λ₯ν λ©μμ§λ ν
μ€νΈμ λ°μ΄λ리
νκ³
- html 5 μ΄μ μ κΈ°μ μΈ κ²½μ° -> socket.io,SockJsμ μ¬μ©(μΉμμΌμ²λΌ 보μ΄κ²)
- λΈλΌμ°μ μ μΉμλ²μ μ’
λ₯μ λ²μ μ νμ
νμ¬ κ°μ₯ μ ν©ν κΈ°μ μ μ ννμ¬ μ¬μ©
- λ¬Έμμ΄μ μ£Όκ³ λ°μ μ μκ²λ§ ν΄μ€λ€.
- μ£Όκ³ λ°μ λ¬Έμμ΄μ ν΄λ
μ μ΄ν리μΌμ΄μ
μ΄ ν΄μΌν¨.
- HTTP λ νμμ μ ν΄λ¨κΈ° λλ¬Έμ μ½μμ λ°λ₯΄λ©΄ ν΄μμ΄ κ°λ₯νλ€. νμ§λ§ μΉμμΌμ νμμ΄ μ ν΄μ Έμμ§ μμμ μ΄ν리μΌμ΄μ
μμ μ½κ² ν΄μνκΈ° νλ€λ€.
- κ·Έλ κΈ° λλ¬Έμ sub-protolμ μ¬μ©ν΄μ μ£Όκ³ λ°λ λ©μμ§μ ννλ₯Ό μ½μνλ κ²½μ°κ° λ§λ€.
- λ§μ΄ μ¬μ©λλ κ²μ STOMP