ํ๋ ๋ง์์ ์ผ๊ธฐ๋ฅผ ํตํด ํ์ด๋ด๋ ค๋ ๋ถ๋ค์ ์ํ ์๋น์ค์ ๋๋ค. ๊ทธ๋ ์ ๋จ๊ธด ๊ฐ์ ์ ๊ธฐ๋ก์ ํตํด ๊ธฐ๋ถ์ ๋ถ์ํ๊ณ ๊ทธ์ ๋ง๋ ์์ ์ ์ ๋ณํ์ฌ ์ฌ์ฉ์์๊ฒ ์ถ์ฒํด์ค์ผ๋ก์จ ์ข ๋ ๋ถ์๊ธฐ ์๋ ์ผ๊ธฐ์ฅ ๊ฒฝํ์ ์ ๊ณตํฉ๋๋ค.
๐ข SSFAY 10๊ธฐ 2ํ๊ธฐ ํนํํ๋ก์ ํธ
๐ข ํ๋ก์ ํธ ์งํ๊ธฐ๊ฐ: 24.2.19 ~ 24.4.4 (์ด 7์ฃผ)
1. ๊ฐ๋ฐ ํ๊ฒฝ
2. ์ฃผ์ ๊ธฐ๋ฅ
3. ์ฐ์ถ๋ฌผ
4. ๊ตฌํํ ๊ธฐ๋ฅ
5. ํ์ ์๊ฐ
์นด์นด์ค ์์ ๋ก๊ทธ์ธ ํ๋ฉด์ ๋๋ค. ์ ํฌ ๋ค์๋ ์๋น์ค๋ฅผ ์ด์ฉํ๊ธฐ ์ํด์๋ ๊ฐ๋จํ ๋ก๊ทธ์ธ ์ ์ฐจ๋ฅผ ์งํํ๋ฉด ๋๊ตฌ๋ ์ด์ฉํ์ค ์ ์์ต๋๋ค. ๋ค์๋ ์๋น์ค์ ๋งค๋ ฅ์ ์ธ ๋๋ฌด๋ค์ ์๊ฐํฉ๋๋ค! ๊ฐ ์บ๋ฆญํฐ๋ ์ฌ๋ฌ๋ถ์ด ์ด ์ผ๊ธฐ๋ฅผ ๋ฐํ์ผ๋ก ์ฌ๋ฌ๋ถ์๊ฒ ๊ฐ์ฑ ๋์น๋ ๋งค๋ ฅ์ผ๋ก ์์ ์ ์ถ์ฒํด ๋๋ฆฝ๋๋ค. ์ด๋ค์ ์ ๋ํฌํ ์ฑ๊ฒฉ์ด ๋ฐ์๋ ์์ ์ ํ์ผ๋ก ๊ฐ๊ธฐ ๋ค๋ฅธ ๋ถ์๊ธฐ์ ๋ ธ๋๋ฅผ ๊ฒฝํํ์ค ์ ์์ต๋๋ค. ์ผ๊ธฐ๋ฅผ ์ฐ๋ ๊ณผ์ ์ ๋๋ค! ๋ ์ง ์์ ์๋ ์คํผ์ปค๋ ๋ฐฐ๊ฒฝ์์ ์ ํํ๊ธฐ ์ํ ๋ฒํผ์ผ๋ก ์ ํฌ ์๋น์ค๊ฐ ์ ๊ณตํ๋ ์ฌ๋ฌ ๋ฐฐ๊ฒฝ์์ ๋๋ ํจ๊ณผ์์ ์ค์ ํ์ค ์ ์์ต๋๋ค. ์ ๋ชฉ, ํด์ํ๊ทธ, ์ผ๊ธฐ ๊ทธ๋ฆผ, ๊ธ์ฐ๊ธฐ ๊ณต๊ฐ์ ํ์ฉํ์ฌ ์ผ๊ธฐ ๋ด์ฉ์ ๋ฑ๋กํ์๋ฉด ์ด ์ผ๊ธฐ ๋ด์ฉ์ ๊ฐ์ ๋ถ์์ ๋ฐํ์ผ๋ก ์ ํฌ ๋๋ฌด ์บ๋ฆญํฐ๋ค์ด ๊ฐ์์ ๋ ธ๋๋ฅผ ์ค๋นํด์ต๋๋ค. ๋ค ๊ฐ์ ๊ฐ์ฑ ์๋ ๋๋ฌด ์ค ํ๋๋ฅผ ์ ํํ์๋ฉด, ๊ทธ ๋๋ฌด๊ฐ ์์ ํ ๋ ธ๋ ์ถ์ฒ์ ๋ฐ์๋ณด์ค ์ ์์ต๋๋ค. ์ค๋์ ์ผ๊ธฐ์ ๋ง๋ ์์ ์ด ๋ฐ๋ก ๋ฑ๋ก๋๋, ๊ธฐ๋ก๊ณผ ๋์์ ์ฌ๋ฌ๋ถ์ ์ผ์์ ์์ ์ ๋ํฉ๋๋ค. ์ผ๊ธฐ๋ฅผ ๋ฑ๋กํ๋ฉด ๋ฌ๋ ฅ์ ์๋์ผ๋ก ์ฒดํฌ๊ฐ ๋์ด, ๋งค์ผ์ ์์คํ ์๊ฐ๋ค์ ๋์น์ง ์๊ฒ ๋์๋๋ฆฝ๋๋ค! ํด๋น ๋ ์ง๋ฅผ ํด๋ฆญํ๋ฉด ๊ทธ๋ ๊ธฐ๋กํ ์ผ๊ธฐ์ ํจ๊ป ์ถ์ฒ๋ฐ์ ๋ ธ๋๋ฅผ ํ์ธํ์ค ์ ์์ต๋๋ค. ์ํ ์์ด์ฝ์ ํตํด ์ด ๋ ธ๋๋ค์ ๊ฐ์ธ ํ๋ ์ด๋ฆฌ์คํธ์ ์ถ๊ฐํ ์ ์๊ณ , ์ ๋ณด ์์ด์ฝ์ผ๋ก ๊ฐ์ฌ๋ฅผ ๋ณด๋ฉฐ, ๋ง์์ ๋๋ ๊ฐ์ฌ ๋ฌธ๊ตฌ๋ฅผ ์ ์ฅํ๋ ๊ธฐ๋ฅ๋ ์ด์ฉํ์ค ์ ์์ต๋๋ค. ์์ฑํ ์ผ๊ธฐ์์ ๋ํ๋๋ ๊ฐ์ ์ ๋ถํฌ๋ฅผ ํ๋์ ๋ณผ ์ ์์ต๋๋ค. ๊ฐ์ ๋ถํฌ๋์๋ ํ๋ณต, ์ฌํ, ๋ถ๋ ธ, ํ์ค, ๋๋, ๋๋ ค์, ์ค๋ฆฝ์ธ 7๊ฐ์ง์ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์บ๋ฆฐ๋๋ฅผ ํตํด ์ง๊ธ๊น์ง ์์ฑํ ์ผ๊ธฐ์ ์์ ์ ์์ฝ๊ฒ ๋๋์๋ณผ ์ ์์ต๋๋ค! ํ ๋ฌ ๋์์ ๊ฐ์ ๋ถ์์ ๋์๋ณด๋ฉฐ ๋ ๋์ ์์ ์ผ๋ก ์ฑ์ฅํ๋ ๊ณ๊ธฐ๋ฅผ ๋ง๋ จํด ๋ณด์ธ์! ๊ทธ๋์ ์ผ๊ธฐ๋ฅผ ์ฐ๋ฉด์ ์ถ์ฒ ๋ฐ์๋ ๋ ธ๋๋ก ๋ง๋ค์๋ ์ฌ๋ฌ๋ถ๋ง์ ํ๋ ์ด๋ฆฌ์คํธ๋ก ์์ ๋กญ๊ฒ ๋ ธ๋๋ฅผ ๊ฐ์ํ์ค ์ ์์ต๋๋ค!
- ์น ๊ธฐ๋ฐ ์ดํ๋ฆฌ์ผ์ด์
- React๋ฅผ ํ์ฉํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋น์ค
- ์นด์นด์ค ๋ก๊ทธ์ธ
- OAuth2 ์ธ์ฆ์ ํ์ฉํด ๋ถํ์ํ ๊ฐ์ธ ์ ๋ณด ์ ๋ ฅ ์ต์ํ
- Redis๋ฅผ ํ์ฉํ ๊ฐ์ธ์ ๋ณด ์ ์ฅ
- in-memory DB๋ฅผ ํ์ฉํ์ฌ ์ค์๊ฐ ์ฌ์ฉ์์ ๋ก๊ทธ์ธ ํ ํฐ ์กฐํ ์ต์ ํ ๋ฐ ํ ํฐ ์ญ์ ์๋ํ
- ์ด๋ฏธ์ง ์ ๋ณด ์ ์ฅ
- s3๋ฅผ ํ์ฉํ์ฌ ์ผ๊ธฐ ๊ทธ๋ฆผ ๋ฐ์ดํฐ์ ์์ ์ฑ ๋ฐ ํ์ฅ์ฑ ํฅ์
- jwt ํ ํฐ ๋ฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ์นด์นด์ค ์์ ๋ก๊ทธ์ธ์ ํตํด์ ํ๋ก ํธ์์ ํ์ ์ ๋ณด๋ฅผ ๋ฐ๊ณ ์ด๋ฅผ access token ๋ฐ refresh token์ผ๋ก ๋ณํํ์์ต๋๋ค.
- ์ธ์ฆ์ด ์๋๋ ํ ํฐ์ ์ธ์ฆํ๋ ค๊ณ ํ๋ ๊ฒฝ์ฐ AuthenticationEntryPoint ๊ฐ์ฒด๋ฅผ ํ์ฉํ์ฌ ์๋ฌ ๋ด์ฉ์ ์ปค์คํ ํ์์ต๋๋ค.
- access token์ด ๋ง๋ฃ๊ฐ ๋๋ฉด refresh token์ ํ์ฉํ์ฌ access token์ ์ฌ๋ฐ๊ธํ๋๋ก ๊ธฐ๋ฅ์ ๊ตฌํํ์ต๋๋ค.
- ํ์ ๋๋ค์ ์ ๋ณด ์
๋ ฅ, ์์ , ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ๋ค์๋ ์์ ์ฒซ ๋ก๊ทธ์ธ์ ์งํํ๋ฉด ๋๋ค์ ์ ๋ ฅ ๊ณผ์ ์ ๋ฌด์กฐ๊ฑด ๊ฑฐ์ณ์ผ ํ๋๋ฐ ์ด ๊ณผ์ ์ ๊ฑฐ์น์ง ์๋ ๊ฒฝ์ฐ ๋ฐ์ํ ์ ์๋ ์์ธ์ฒ๋ฆฌ๋ฅผ ์งํํ์ต๋๋ค.
- ๋๋ค์ ์ ๋ ฅ ์ ์ฌ๋ฌ ์ ํ ์ฌํญ์ ์ ํด๋์๋๋ฐ ์ด์ ๊ด๋ จ ์์ธ์ฒ๋ฆฌ๋ฅผ ์งํํ์ต๋๋ค.
- ์ผ๊ธฐ ์
๋ ฅ, ์กฐํ, ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- ์ผ๊ธฐ๋ฅผ ์ ๋ ฅ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ผ๊ธฐ์ ๋ํ ๋ด์ฉ์ด ์ ์ฅ๋ฉ๋๋ค. ์ผ๊ธฐ ์ ๋ ฅ ์ ์ผ๊ธฐ ๋ด์ฉ ๋ฐ ํด์ ํ๊ทธ ๋ด์ฉ๋ ๋ฐ๊ฒ ๋๋๋ฐ ์ผ๊ธฐ ๋ด์ฉ์ ๊ธ์ ์ ์ ํ ์์ธ ์ฒ๋ฆฌ๋ฅผ ์ถ๊ฐ๋ก ๊ตฌํํ๊ณ , ํด์ ํ๊ทธ๋ ํ๊ทธ์ ๊ฐ์, ๋ด์ฉ์ ๋ํ ์์ธ ์ฒ๋ฆฌ๋ฅผ ์ถ๊ฐ๋ก ๊ตฌํํ์ต๋๋ค.
- ์์ ์ด ์ด ์ผ๊ธฐ ์ ๋ณด๋ฅผ ์กฐํ, ์ ๋ ฅ, ์ญ์ ํ ๋ ๋ก๊ทธ์ธ ์ฒ๋ฆฌ๊ฐ ์๋ฃ๋ ํ์์ธ ๊ฒฝ์ฐ๋ง ๊ฐ๋ฅํ๋๋ก ์์ธ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
- ์ผ๊ธฐ ๊ฐ์ ์ ๋ณด ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ๊ธธ๊ธฐ ๊ฐ์ ์ ๋ณด๋ฅผ ์กฐํํ ๋ ๋ก๊ทธ์ธ ๋ ํ์์ ํํด์ ์ ๋ณด๋ฅผ ์กฐํํ ์ ์๋๋ก ์์ธ ์ฒ๋ฆฌ๋ฅผ ์งํํ์ต๋๋ค.
- ํน์ ๋ ์ง์ ์ด ์ผ๊ธฐ์ ๋ํ ์์ธ ์ ๋ณด๋ฅผ ์กฐํํ ๋ ๋ถ์์ด ์๋ฃ๋ ๊ฐ์ ์ ๋ณด๋ฅผ ์กฐํํ ์ ์๋๋ก ๊ธฐ๋ฅ์ ๊ตฌํํ์ต๋๋ค. (๊ฐ์ ์ ๋ณด๋ ์์น๋ก ํํ์ด ๋ฉ๋๋ค. (1 ~ 10000))
- jpa ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ํ์ฉํ์ฌ ํน์ ์(month)์ ํด๋นํ๋ ๋ ์ง๋ณ ๊ฐ์ ์ ๋ณด๋ฅผ ๋ชจ๋ ์กฐํํ ์ ์๋ ํํฐ๋ง ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
- ๋ฐฐ๊ฒฝ์์
์ ๋ณด ์กฐํ ๋ฐ ๋ณ๊ฒฝ ๊ธฐ๋ฅ ๊ตฌํ
- ์ผ๊ธฐ๋ฅผ ์์ฑ ์ ๋ฐฐ๊ฒฝ์์ ์ ๋ฃ๊ธฐ ์ํ ์ ๋ณด๋ฅผ ์กฐํํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
- ๋ฐฐ๊ฒฝ์์ ๋ชฉ๋ก ์กฐํ ๊ธฐ๋ฅ, ํน์ ๋ฐฐ๊ฒฝ ์์ ์กฐํ ๊ธฐ๋ฅ, ์ฌ์ฉ์๊ฐ ์ ํํ ๋ฐฐ๊ฒฝ์์ ์ ๋ณด ์กฐํ ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
- ์ฌ์ฉ์๊ฐ ์ํ๋ ๋ฐฐ๊ฒฝ์์ ์ผ๋ก ์ค์ ํ ์ ์๋๋ก ๋ฐฐ๊ฒฝ์์ ๋ณ๊ฒฝ ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
- mysql ๋ฐ์ดํฐ๋ฒ ์ด์ค์ procedure ๋ฅผ ํ์ฉํ์ฌ ์์ , ์ผ๊ธฐ, ๊ฐ์ ๊ด๋ จ ๋๋ฏธ๋ฐ์ดํฐ ์ฝ์
์์ง์ | ์ ์ฑํ | ์กฐ์ํ |
---|---|---|
์ง์ฃผ์ฑ | ์ ์๋ฒฝ | ๊น์์ง |
---|---|---|