-
Notifications
You must be signed in to change notification settings - Fork 3
๐ก BE ๊ธฐ์ ์ ํ ์ด์
sunghwki edited this page Dec 4, 2024
·
4 revisions
๋ถ์ผ | ์์ฑ์ | ์์ฑ์ผ |
---|---|---|
BE | ๊น์ฑํ | 24๋ 12์ 02์ผ |
- NestJS๋ ๋ชจ๋ํ์ ์์กด์ฑ ์ฃผ์ (DI)์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ์ฌ ํ๋ก์ ํธ ๊ตฌ์กฐ๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ ์ ์๋ค. ํ ํ์ ์ ์ฝ๋์ ์ ์ง๋ณด์์ ํ์ฅ์ด ์ฉ์ดํ๋ค๋ ์ ์ด ํฐ ์ฅ์ ์ด๋ค.
- NestJS๋ ํ์ ์คํฌ๋ฆฝํธ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋์ด, ์ ์ ํ์ ๊ฒ์ฌ๋ฅผ ํตํด ์์ ์ ์ธ ์ฝ๋ ์์ฑ์ ์ง์ํ๋ค.
- ์ํธ๊ฐ์ ๋ฆฌ๋ทฐ๋ฅผ ์ํํ๊ฒ ์งํํ๊ณ , FE์ BE๊ฐ์ ๋จ์ ์ด ์๋ ์ฝ๋๋ฆฌ๋ทฐ๋ฅผ ์งํํ ์ ์๊ฒ ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฑํํ๋ค.
- TypeORM์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ๋ฆฝ์ฑ์ ๋ณด์ฅํ ์ ์์ด, MySQL๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ DB๋ก์ ์ ํ๋ ์์ํ๋ค.
- ์ํฐํฐ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์กฐ๋ฅผ ์ ์ํ๊ณ , ๋ณ๊ฒฝ ์ฌํญ์ ์๋์ผ๋ก ๋ฐ์ํ ์ ์๋ ๋ง์ด๊ทธ๋ ์ด์ ๊ธฐ๋ฅ์ด ์์ด ๊ฐ๋ฐ ์๋๋ฅผ ๋์ผ ์ ์์๋ค.
-
NestJS
์์ ํตํฉ์ด ์ฉ์ดํ๋ฉฐ, ๋ฐ์ฝ๋ ์ดํฐ ๊ธฐ๋ฐ์ ๊ฐ๋ฐ ๋ฐฉ์์ผ๋ก ์ฝ๋ ๊ฐ๋ ์ฑ์ด ํฌ๊ฒ ํฅ์๋๋ค.
-
Socket.IO
๋ฅผ ์ฌ์ฉํ์ฌ ์ค์๊ฐ ์ฑํ ๋ฐ ์๋ฆผ ๊ธฐ๋ฅ์ ์ฝ๊ฒ ๊ตฌํํ ์ ์๋ค. - WebSocket๊ณผ ํด๋ฐฑ ๋ฉ์ปค๋์ฆ์ ์ง์ํด ๋ค์ํ ํ๊ฒฝ์์ ์์ ์ ์ธ ํต์ ์ด ๊ฐ๋ฅํ๋ค.
- ์ฌ๋ฌ ์ฌ์ฉ์ ๊ทธ๋ฃน์ ๋ถ๋ฆฌํ์ฌ ๊ด๋ฆฌํ ์ ์๋ ๋ฃธ ๊ธฐ๋ฅ์ด ์์ด, ์ฑํ ๋ฐฉ๊ณผ ๊ฐ์ ๋ฉํฐ๋ฃธ ๊ตฌ์กฐ ๊ตฌํ์ด ์ฉ์ดํ๋ค.
- ์ฃผ์๋ง๋ค ์ฑํ ๋ฐฉ์ ๊ตฌํํด์ผ ํ๋ ์๋น์ค์์๋ ํ์์ด๋ค.
- ํ๊ตญํฌ์์ฆ๊ถ api๋ฅผ ํ
์คํธํด๋ณธ ๊ฒฐ๊ณผ
socket.IO
๋ ์ ๋๋ก ์ง์ํ์ง ์๊ณ , Websocket์ ๋ํด์๋ง ์ ์์ ์ผ๋ก ์ง์ํ๋ ๊ฒ์ ํ์ธํ ์ ์์๋ค.
- ๐ฉ FE ๊ธฐ์ ์ ํ์ด์
- โจ ์ฐจํธ์ ๋ฐ์ํ ๊ตฌํ๊ณผ useRef ํ์ ๋ฌธ์
- ๐ฃ ๋ถ๋ชจ ์์์ ์ํ์ ๋ฐ๋ผ ์์ ์์๋ ์คํ์ผ ๋ณํ ๋ถ์ฌํ๊ธฐ
- ๐ zod ๋์ ํ๊ธฐ
- ๐ useInfiniteQuery๋ฅผ ์ฌ์ฉํ ๊ทธ๋ํ ๋ฌดํ์คํฌ๋กค ๊ตฌํ
- ๐ซ ์ฌ์ฉ์์ ์์ ๋ณํ ์๋ ๊ทธ๋ํ ์คํฌ๋กค ๊ตฌํํ๊ธฐ
- ๐งช ์๋ง์ ๊ทธ๋ํ ๋ฐ์ดํฐ ์์ฒญ์ ์ด๋ป๊ฒ ์ค์ผ๊น
- ๐ ๋คํฌ๋ชจ๋์์ ์๋ก๊ณ ์นจ ์ ๋ผ์ดํธ๋ชจ๋๊ฐ ์ ๊น ๋ณด์ด๋ ๋ฌธ์
- ๐ ์น์์ผ์ ์ฑํ ๋ฐ์ดํฐ์ REST API์ ์ฑํ ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ๊ด๋ฆฌํ๊ธฐ
- ๐ก BE ๊ธฐ์ ์ ํ ์ด์
- โ๏ธ Node WebSocket ํ๊ณ ๋ค๊ธฐ
- โ๏ธ TypeORM Datasource mock ๋ง๋ค๊ธฐ
- โ๏ธ oauth ID range ๋ฌธ์
- ๐ custom pipe์์ Nan์ด ๋ฐ์์ง๋ ๋ฌธ์
- ๐ช nest Websocket์ ์ธ์ ์ด ์๋๋ค๊ณ ?
- ๐ด nginx websocket ์ฐ๊ฒฐ ์ ๋ฌธ์ ๋ฐ์
- ๐ WebPush ๊ตฌํ
- ๐ง ์ฐ์ ์์ ํ๋ก ์์ฒญ ์ ์ดํ๊ธฐ
- ๐ websocket์ด ๋ฆ๊ฒ ํ ๋น๋์ด ๋ฐ์๋๋ ๋ฌธ์
- ๐ฅณ typeorm์ ์ด์ฉํ FCM ์๋ฆผ ์๋น์ค
- ๐ฆ ๋ค์ค ์ ์ ๋์์ฑ ์ ์ด โ ์ฑ๊ธํค, ๋ฎคํ ์ค
- ๐ ๊ทธ๋ํ ๋ฐ์ดํฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ์ ๊ณตํ๊ธฐ์ํ ์ ๋ต
- ๐ ๏ธ ์ธํ๋ผ ๊ธฐ์ ์คํ ์ ํ ์ด์
- ๐ Ncloud ์ค์ ๊ณผ์
- ๐ ORM ๊ธฐ์ ์คํ ๋น๊ต
- ๐ค RabbitMQ๋ก ๋ถ์ฐ ์๋ฒ์๊ฒ ๋ฉ์์ง๋ฅผ ๋ถ๋ฐฐํ๊ธฐ
- ๐ข private DB ์๋ฒ์ ์ ์ํ์ง ๋ชปํ๋ ํ์
- ๐ 1์ฃผ์ฐจ ๋ฐํ
- ๐ 2์ฃผ์ฐจ ๋ฐํ
- ๐ 3์ฃผ์ฐจ ๋ฐํ
- ๐ 4์ฃผ์ฐจ ๋ฐํ
- ๐ 5์ฃผ์ฐจ ๋ฐํ
- ๐ ์ต์ข ๋ฐํ