์์์ ์ทจ๋ฏธ๊ฐ ์๋ ์ฌ๋๋ค์ด ์ด์ฉํ๋ ์๋น์ค๋ฅผ ํตํฉํ์ฌ ์ด์ฉํ๊ธฐ ์ํด์ ์ ์ํ๊ฒ ๋์์ต๋๋ค.
- ์์์ฅ ๊ฒ์(์ง๋)
- ์์์ฅ ๋ฆฌ๋ทฐ
- ์์ ์ผ์ง ์์ฑ
- ์์ ์ปค๋ฎค๋ํฐ
- java 17
- Build Tool : Gradle 7.5.1
- Web Server : Nginx
- Database : MySQL 8.0, Redis
- CI / CD : GitHub Actions, Docker Hub, Docker Compose, Docker Container
- IDE : Intellij
- ๋ก๊ทธ์ธ
- ์นด์นด์ค ํ์๊ฐ์ , ๋ก๊ทธ์ธ
- ๊ด๋ฆฌ์ ๊ณ์ (adimin)
- ๋ก๊ทธ์ธ
- JWT์ Spring Security์ ํํฐ๋ฅผ ์ด์ฉํ ๋ก๊ทธ์ธ ๋ฐฉ์
- Access Token๊ณผ Refresh Token์ Redis์ ์ผ์ ์๊ฐ(30๋ถ) ๊ฐ๊ฒฉ์ผ๋ก ํ์ธ ํ, ์ฌ๋ฐ๊ธ
- ์์ด๋ ์ฐพ๊ธฐ
- ๋น๋ฐ๋ฒํธ ์ฐพ๊ธฐ
- Naver Cloud ๋ฌธ์๋ฐ์ก ์๋น์ค๋ฅผ ์ด์ฉํ์ฌ ๊ฐ์ ํ์๋ ํธ๋ํฐ๋ฒํธ๋ก ์ธ์ฆ ๋ฌธ์ ๋ฐ์ก
- ํ์๊ฐ์
- ์ผ๋ฐ ํ์๊ฐ์
- ํธ๋ํฐ ๋ฒํธ ์ธ์ฆ
- ๋ฆฌ๋ทฐ์ ์ ํ๋๋ฅผ ์ํด์ Naver Cloud ๋ฌธ์๋ฐ์ก ์๋น์ค๋ฅผ ์ด์ฉํ์ฌ ํธ๋ํฐ๋ฒํธ๋ก ์ธ์ฆ ๋ฌธ์ ๋ฐ์ก
- redis์ ์ธ์ฆ๋ฒํธ 3๋ถ์ดํ ์ญ์ ์ฒ๋ฆฌ (์ธ์ฆ๋ฒํธ๊ฐ 6์๋ฆฌ์ด๊ธฐ ๋๋ฌธ์ ์ธ์ฆ๋ฒํธ ์ค๋ณต๋ฌธ์ ์ต์ํ)
- ๋ด ๊ณ์
- ํ์ ์ ๋ณด ์กฐํ
- ํ์ ์์
- ํ์ํํด
- ๋ฉ์ธ ํ์ด์ง
- ์ปค๋ฎค๋ํฐ ์ต์ ๊ธ 5๊ฐ
- ์์์ฅ ๊ฒ์ํ์ด์ง
- ์นด์นด์ค๋งต API๋ฅผ ์ด์ฉํ ์ง๋ ๊ตฌํ
- ํ์ฌ์์น์ฐพ๊ธฐ
- ์ง๋๊ธฐ์ค ๊ฒ์๋ฆฌ์คํธ
- ํค์๋ ๊ฒ์๋ฆฌ์คํธ
- ์์์ฅ ๋ฆฌ๋ทฐํ์ด์ง
- ๋ฆฌ๋ทฐ๋ชฉ๋ก ๋ฐ ์์ธ ํ์ด์ง
- ๋ฆฌ๋ทฐ ๋ชฉ๋ก ์์ฑ / ์์ / ์ญ์
- ์ปค๋ฎค๋ํฐ
- ์ปค๋ฎค๋ํฐ ๊ฒ์๊ธ ์์ฑ / ์์ / ์ญ์
- S3 ํ์ผ ์ ๋ก๋, ์ญ์ (ํ๋ก ํธ ๋ฏธ์์ฑ)
- ๋๊ธ์ฐ๊ธฐ
- ์ข์์ ๋๋ฅด๊ธฐ
- ์นดํ ๊ณ ๋ฆฌ๋ณ ํ์ด์ง ์ฒ๋ฆฌ(์นดํ ๊ณ ๋ฆฌ ๊ฒ์ ๋ฐ ํค์๋ ๊ฒ์)
- ์์ ์ผ์ง
- ์์ ์ผ์ง ๋ ์ง๋ณ ์กฐํ ์บ๋ฆฐ๋
- ์์ ์ผ์ง ์์ฑ ๋ฐ ํ๊ท ์กฐํ
- ์ผ์ง ๋ชฉ๋ก ์์ฑ / ์์ / ์ญ์
- S3 ํ์ผ ์ ๋ก๋, ์ญ์ (ํ๋ก ํธ ๋ฏธ์์ )