์ค์ ํ๋ก์ ํธ ํ๊ณ
ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉด์ ๋ด๊ฒ ์ ์ผ ๋์ ์ ์ธ ๊ธฐ๋ฅ์ ์ฑํ ๊ธฐ๋ฅ์ด์๋ค.
๋ค๋๋ค์ ์ฑํ ๊ธฐ๋ฅ์ ์ฑํ ์ ์ ์ผ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ด์๊ธฐ์ ํฐ ๋ฌธ์ ์์ด ์ฐ๊ฒฐ๋์๋ค.
ํ์ง๋ง,
ํ์ ๋น๋ก๊ทธ์ธ์ ๋๋ ์ฑํ ๋ฐฉ์์ ๋๊ฐ์ ๋ ์ค์๊ฐ์ผ๋ก ๋ฉ์ธ์ง์๋ฆผ์ ์ฃผ๊ธฐ ์ํด
ํด๋น ํ์์ socket.id๊ฐ ์ธ์ ์๊ธฐ๊ณ ์ธ์ ์ฌ๋ผ์ง๋์ง๋ฅผ ์ง์ ํ์ธํด๋ด์ผํ๋ค.
ํ์์ด ์ฑํ ๋ฐฉ์ ๋ค์ด์ค๋ฉด์ ๋ฐ๋ socket.id๋
๋ธ๋ผ์ฐ์ ๋ฅผ ์๋ก๊ณ ์นจํ๋ฉด socket.id๊ฐ ์ง์์ ์ผ๋ก ๋ณ๊ฒฝ์ด ๋์๋ค.
๊ทธ๋์ socket.id์ ํ์์.ID๋ฅผ ์ง์์ ์ผ๋ก ํ์ธํ ์ ์๊ฒ db์ ์ ์ฅํ๊ณ ,
๋งค๋ฒ ์ฑํ ๋ฐฉ์ ๋ค์ด์ฌ๋๋ง๋ค socket.id๋ฅผ ์๋ก ๊ณ ์ณ์คฌ๋ค.
Websocket ๊ณผ socket.io๋ฅผ ์ ํ์ด ๊ตฌ๋ถ์ ๋ชป์ง์๋ ๊ฒ๊ฐ์ ๊ฐ๋ตํ๊ฒ ์ด ๋์ ์ฐจ์ด์ ์ ์ฐพ์๋ณด์๋ค.
Websocket ๊ณผ socket.io ์ฐจ์ด์
Websocket์ ์๋ฐฉํฅ ์ํต์ ์ํ ํฌ๋กํ ์ฝ์ด๋ค.
ํ๋กํ ์ฝ์ ์ฝ๊ฒ ๋งํ์๋ฉด, ์๋ก ๋ค๋ฅธ ์ปดํจํฐ๋ผ๋ฆฌ ์ํตํ๊ธฐ ์ํ ์ฝ์ ์ ๋๋ก ์ดํดํ๋ฉด ๋๋ค.
๋ฐ๋ฉด, Socket.io๋ ์๋ฐฉํฅ ํต์ ์ ํ๊ธฐ์ํด ์น์์ผ ๊ธฐ์ ์ ํ์ฉํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.
์ด์ฐ๋ณด๋ฉด ์๋ฐ์คํฌ๋ฆฝํธ์ jQuery์ ๊ด๊ณ๊ฐ ๋น์ทํ๋ค๊ณ ํ ์ ์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ socket.io๊ฐ ๊ฐ์ ๊ธฐ๋ฅ์ ๊ตฌํํ๋๋ผ๋ ์ฝ๊ฐ ๋๋ฆฌ์ง๋ง, ๋ง์ ํธ์์ฑ์ ์ ๊ณตํ๋ค. ๋ํ, java, C++, Python ๋ฑ ์ฌ๋ฌ ์ธ์ด๋ค์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ํ ์ง์ํ๋ค.
Socket.io ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ websocket์ด ์๊ณ ,
socket.io ๊ฐ websocket๋ณด๋ค (์ง๊ธ์ ๋ง์ ์ฐจ์ด๋ ์์ง๋ง) ํธํ์ด ์ ๋๊ธฐ ๋๋ฌธ์ ์ ์ฌ์ฉํ ๊ฒ๊ฐ๋ค.
Websocket
- HTML5 ์น ํ์ค ๊ธฐ์
- ๋งค์ฐ ๋น ๋ฅด๊ฒ ์๋ํ๋ฉฐ, ํต์ ํ ๋ ์์ฃผ ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ด์ฉํจ
- ์ด๋ฒคํธ๋ฅผ ๋จ์ํ ๋ฃ๊ณ , ๋ณด๋ด๋ ๊ฒ๋ง ๊ฐ๋ฅํจ
Socket.io
- ํ์ค ๊ธฐ์ ์ด ์๋๋ฉฐ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
- ์์ผ ์ฐ๊ฒฐ ์คํจ ์, fallback์ ํตํด ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ์์์ ํด๋น ํด๋ผ์ด์ธํธ์ ์ฐ๊ฒฐ์ ์๋ํจ
- ๋ฐฉ ๊ฐ๋ ์ ์ด์ฉํด ์ผ๋ถ ํด๋ผ์ด์ธํธ์๊ฒ๋ง ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ธ๋ก๋์บ์คํ ์ด ๊ฐ๋ฅํจ
ํ๋ก์ ํธ ๋๋ฌ์ผ๋๊น, ๋งํ๋ ์์ฌ์ด์ .
ํ์ง๋ง, ์๊ฐ๋ณด๋ค ๋ ๋ง์ ๊ธฐ๋ฅ๋ค์ ๋์ ํ์ง ๋ชปํ๋ ๊ฒ์ด ๋๋ฌด ์์ฝ๋ค.
ํ๋ก์ ํธ๊ฐ ๋ง๋ฌด๋ฆฌ๋๋ฉด์, ์ ์ ์๋ฒ์ ๋ํ ๊ณ ๋ฏผ์ด ์์๋ฌ๋ค.
'์๋ฒ๋ ์ ์๋์ด ๋๊ณ ์๋๊ฑด๊ฐ?'
'์ฑํ ์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๊ฐ ๋ฏธ์น๋ฏ์ด ์์ผํ ๋ฐ, ๊ด์ฐฎ์๊ฑด๊ฐ?'
'์ฌ๋๋ค์ด ๋ชฐ๋ ค์๋ ๋ด ์๋ฒ๋ ์ ๋ฒํธ ์ ์๋๊ฐ?'
'๋์ฒด ์ด๋ป๊ฒ ํ๋ฉด ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ์ ์์ง?'
๊ทธ ์ค ์ ์ผ ์์ฌ์ด ๊ฒ์ Nignx๋ก IP์ฐจ๋จ
๋ฐฐํฌ๋ฅผ ์์ํ๊ณ ๋๋, ๋ฌด์๋นํ๊ฒ ์ฑํ ์ ํ๊ฑฐ๋ ํ ์คํธ๊ฒ์๋ฌผ์ ์ฌ๋ ธ๋ค. ๊ทธ๊ฒ ๋ง๊ณ ๋ ์๋ฒ๋ฅผ ๋์์๋๋ก ์ฌ์ฉํ๊ธฐ ์ํด ๋ค์ด์ค๊ธฐ ๋๋ฌธ์ IP์ฐจ๋จ์ด ํ์ํ๋ค๊ณ ํ์ฌ IP์ฐจ๋จ์ ์ผ๋ํด๋๊ณ ์๋ค.
Nginx๋ก IP ์ฐจ๋จํ๋ ค๊ณ ํ์ง๋ง, Nginx์ reverse port ๊ฐ ์ ์ฉ์ด ์๋์ ์ฌ์ฉ๋ ํฌํธ๋ผ๊ณ ์ด์๋ฅผ ๋ฟ์ด๋ด๋๋ ๊ฒฐ๊ตญ์๋
'ERR_CONNECTION_REFUSED' ์๋ฌ๊ฐ ๋ฌ๋ค. SSL์ธ์ฆ์ ํ๋๋ฐ๋ ๋๋ ์๋ฌ๋ฉด ์น ์๊ฐ์ด ๋ง์ง ์์์ ๋๋ ์๋ฌ์๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ํ๋ก ํธ๋ถ๋คํํ ์์ฒญ์ ๋๋ ค์ผํ๋ ๊ฒ๊ฐ์๋ฐ, ์ด๊ฒ๋ ํ์คํ์ง ์๊ณ ๋ค์๋ ์ ์ต์ข ๋ฐํํ์ ์ค๋นํ๊ธฐ ์ํด์ ๋ง๋ฌด๋ฆฌ๋ฅผ ์ง์๋ค. ์ฌ๋ฌ๋ชจ๋ก ์ด๊ฒ์ ๊ฒ ์๋ํ ์ ์๋ ์๊ฐ๋ค์ด ์ถฉ๋ถํ์ง ์์ ์์ฌ์ ๋ค.
์ด๋ค ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ์๊ฐ
๋ฐฑ์๋์ ๊ฐ์ฅ ํฐ๋งค๋ ฅ์ ๊ฒฐ๊ณผ๋ฅผ ์์น๋ก ๋ณผ ์ ์๋ ๊ฒ์ด ์๋๊ฐ ์ถ๋ค.
๊ฒฐ๊ณผ ๊ฐ์ ๋ณด๊ธฐ ์ํด์ ๊ทธ์ ๋ฐ๋ฅธ ์์ฒญ๋ ๊ณต๋ถ๊ฐ ํ์ํ๊ฒ ์ง๋ง
๊ฒฐ๊ณผ ํ์คํ ์๋, ๋ฐ์ดํฐ๋ก ๋ณด๋ ๊ฐ๋ฐ์๊ฐ ๋๊ณ ์ถ๋ค.
'๊ฐ๋ฐ ์ด์ผ๊ธฐ > ํญํด99' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํญํด99] 12์ฃผ์ฐจ (์ค์ 5์ฃผ์ฐจ) - N๋นต, ์ฒซ๋ฒ์งธ ๋ฐฐํฌ (0) | 2022.05.29 |
---|---|
[ํญํด99] 10์ฃผ์ฐจ(์ค์ 3์ฃผ์ฐจ) - ์ค๊ฐ๋ฐํ (0) | 2022.05.15 |
[ํญํด99] 9์ฃผ์ฐจ(์ค์ 2์ฃผ์ฐจ) - Error Code: 1071 (0) | 2022.05.08 |
[ํญํด99] 8์ฃผ์ฐจ(์ค์ 1์ฃผ์ฐจ) - HTTPS_crbug ์ด์ (0) | 2022.05.01 |
[ํญํด99] 6์ฃผ์ฐจ - CORS ๋? (0) | 2022.04.10 |