[10λΆ„ ν…Œμ½”ν†‘] πŸ§²μ½”μΌμ˜ Web Socket

JIWOO YUNΒ·2023λ…„ 4μ›” 13일
0
post-custom-banner

movie


μ›Ήμ†ŒμΌ“μ΄λž€?

  • 두 ν”„λ‘œκ·Έλž¨ κ°„μ˜ λ©”μ‹œμ§€λ₯Ό κ΅ν™˜ν•˜κΈ° μœ„ν•œ 톡신 방법 쀑 ν•˜λ‚˜.
  • ν˜„μž¬ μΈν„°λ„·ν™˜κ²½(HTML5)μ—μ„œ 많이 μ‚¬μš©λœλ‹€.
  • μ›Ή μ†ŒμΌ“μ„ μ§€μ›ν•˜λŠ” λΈŒλΌμš°μ €μ˜ 경우 μ†ŒμΌ“ ν”„λ‘œν† μ½œ 지원

νŠΉμ§•

  • μ–‘λ°©ν–₯ 톡신
    • 데이터 μ†‘μˆ˜μ‹ μ„ λ™μ‹œμ— μ²˜λ¦¬ν•  수 μžˆλŠ” 톡신 방법
    • ν΄λΌμ΄μ–ΈνŠΈμ™€ μ„œλ²„κ°€ μ„œλ‘œμ—κ²Œ 원할 λ•Œ μ£Όκ³  λ°›κΈ° κ°€λŠ₯
    • 톡상적인 HTTP 톡신은 단방ν–₯ 톡신.
  • μ‹€μ‹œκ°„ λ„€νŠΈμ›Œν‚Ή
    • μ›Ή ν™˜κ²½μ—μ„œ μ—°μ†λœ 데이터λ₯Ό λΉ λ₯΄κ²Œ λ…ΈμΆœν•œλ‹€.

λ™μž‘ 방법

  • ν•Έλ“œ 쉐이킹
  • ν•Έλ“œ 쉐이킹 이후 데이터 전솑
    • ν”„λ‘œν† μ½œμ΄ ws 둜 λ³€κ²½λœλ‹€.

ν”„λ‘œν† μ½œ νŠΉμ§•

  • 졜초 μ ‘μ†μ—λ§Œ http ν”„λ‘œν† μ½œ μœ„μ—μ„œ handshaking을 μ§„ν–‰ν•˜κΈ° λ•Œλ¬Έμ— http header μ‚¬μš©
  • μ›Ήμ†ŒμΌ“μ„ μœ„ν•œ λ³„λ„μ˜ ν¬νŠΈλŠ” μ—†λ‹€ -> 기쑴포트 μ‚¬μš©
  • ν”„λ ˆμž„μœΌλ‘œ κ΅¬μ„±λœ λ©”μ‹œμ§€λ‘œ μ†‘μˆ˜μ‹ 
  • λ©”μ‹œμ§€μ— 포함 될 μˆ˜μžˆλŠ” κ΅ν™˜ κ°€λŠ₯ν•œ λ©”μ‹œμ§€λŠ” ν…μŠ€νŠΈμ™€ λ°”μ΄λ„ˆλ¦¬

ν•œκ³„

  • html 5 μ΄μ „μ˜ 기술인 경우 -> socket.io,SockJs을 μ‚¬μš©(μ›Ήμ†ŒμΌ“μ²˜λŸΌ 보이게)
  • λΈŒλΌμš°μ €μ™€ μ›Ήμ„œλ²„μ˜ μ’…λ₯˜μ™€ 버전을 νŒŒμ•…ν•˜μ—¬ κ°€μž₯ μ ν•©ν•œ κΈ°μˆ μ„ μ„ νƒν•˜μ—¬ μ‚¬μš©
  • λ¬Έμžμ—΄μ„ μ£Όκ³  받을 수 있게만 ν•΄μ€€λ‹€.
    • 주고받은 λ¬Έμžμ—΄μ˜ 해독은 μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ 해야함.
    • HTTP λŠ” ν˜•μ‹μ„ 정해놨기 떄문에 약속을 λ”°λ₯΄λ©΄ 해석이 κ°€λŠ₯ν•˜λ‹€. ν•˜μ§€λ§Œ μ›Ήμ†ŒμΌ“μ€ ν˜•μ‹μ΄ μ •ν•΄μ Έμžˆμ§€ μ•Šμ•„μ„œ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μ‰½κ²Œ ν•΄μ„ν•˜κΈ° νž˜λ“€λ‹€.
    • κ·Έλ ‡κΈ° 떄문에 sub-protol을 μ‚¬μš©ν•΄μ„œ μ£Όκ³ λ°›λŠ” λ©”μ‹œμ§€μ˜ ν˜•νƒœλ₯Ό μ•½μ†ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€.
    • 많이 μ‚¬μš©λ˜λŠ” 것은 STOMP
profile
μ—΄μ‹¬νžˆν•˜μž
post-custom-banner

0개의 λŒ“κΈ€