- ์๋น์ค ์๊ฐ
- ํ๋ก์ ํธ ๋ชฉํ
- ํ์ ๊ตฌ์ฑ
- ๊ธฐ์ ์คํ
- ์ญํ ๋ถ๋ด
- ์๋น์ค ์ํคํ ์ฒ
- 1.1 ํจ์น
- ์ฃผ์ ๊ธฐ๋ฅ
์ฐ๋ฆฌ๋ค์ ๋๋๋ฌด ์ฒ Whoru! ์ธ์ ์ฌ์ฉํ๋๊ฒ ์ข์๊น์?
์ต๋ช ์ ๊ธฐ๋ฐ์ผ๋ก ๋๋คํ ๋์์๊ฒ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ณด์ธ์!
whorU ํ๋ก์ ํธ๋ ์ด์์ ์ธ ์ธก๋ฉด์ ๊ณ ๋ คํ์ฌ ๊ฐ๋ฐํ๋๊ฒ๊ณผ
์ฌ์ฉ์๋ค๋ก๋ถํฐ์ ์ค์ ํผ๋๋ฐฑ์ ๊ธฐ๋ฐ์ผ๋ก 1.1 ํจ์น๋ฅผ ์งํํ๋ ๊ฒ์ ๋ชฉํ๋ก ์งํํ์์ต๋๋ค.
๋ฐ๋ผ์ ์ด์์ ์ธ ์ธก๋ฉด์์๋ ๊ฐ๋ฐ์๋ค์ด ์ฝ๊ฒ ์ด์์ ๋์ํ๊ธฐ ์ํด ๋ก๊น , ๋ชจ๋ํฐ๋ง ํด์ ์ฌ์ฉํ์๊ณ
๊ฐ๋ฐ ์๋ฒ EC2 ์ ์ด์ ์๋ฒ EC2๋ฅผ ์ต๋ํ ๋์ผํ ํ๊ฒฝ์ผ๋ก ๊ตฌ์ถํ์ฌ
๋ค์ ๋ฒ์ ์ ๋ฐ์ดํธ์ ํธํ์ฑ ๋ฌธ์ ์์ด ์งํํ ์ ์์์ต๋๋ค.
ํผ๋๋ฐฑ์ ์๋์ ๊ฐ์ ๊ตฌ๊ธ์ค๋ฌธ์ ํตํด ์งํํ์์ต๋๋ค.
![](/RyuTa960625/WhoRU/raw/master/exec/img/survey.png)
๊น์ ํ Back-End |
์ ๋ฏผํธ Infra |
๊นํ์ฐฝ Back-End |
๋ฅํ์ Front-End |
๊ฐ์ ์ Front-End |
์ค์นํ Front-End |
Spring boot : 3.2.4
JDK 21
Gradle : 8.7
JWT : 0.12.3
MySQL : 8.3.0
Redis : 7.2.4
Node : 20.11.1
React : 18.2.0
Vite : 5.1.6
Docker : 26.0.2
Nginx : 1.25.5
- ๋ฉํธ๋ฆญ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ
- WAS Log ์์ง ๋ฐ ๋ชจ๋ํฐ๋ง ํ๊ฒฝ ๊ตฌ์ถ
- ์์ง ์ปจํ ์ธ ๊ฐ๋ฐ
- ์ฌ์ฉ์ ์ ๊ณ ๋ก์ง ๊ฐ๋ฐ
- ๊ฐ๋ฐ ์๋ฒ ํ๊ฒฝ ๊ตฌ์ถ ๋ฐ ์ด์ฉ
- FE, BE ๋ธ๋์น ๋ณ CI/CD ํ๊ฒฝ ๊ตฌ์ถ
- ์นด์นด์ค, ๊ตฌ๊ธ ์์ ๋ก๊ทธ์ธ ๊ตฌํ
- Spring Security ๊ฐ๋ฐ
- ํ์๊ด๋ฆฌ API ๊ฐ๋ฐ
- ์ต์ข ํ๋ก์ ํธ ๋ฐํ
- ๋ฉ์ธ์ง ๋๋ฉ์ธ ๊ตฌํ
- ๊ด๋ฆฌ์ ๊ณต์ง์ฌํญ ๋๋ฉ์ธ ๊ตฌํ
- Firebase Cloud Message ํธ์์๋ฆผ ๋ฐฑ์๋ ๊ตฌํ
- ์ฐํธํจ ํ์ด์ง
- ๋ฐ์ผ๋ฆฌ ๋ฉ์์ง ํ์ด์ง
- ๊ฐ์ธ ๋ฉ์์ง ํ์ด์ง
- ๋ฉ์์ง ์ ์ก ํ์ด์ง
- ์์ ๋ก๊ทธ์ธ
- ํ์ ๊ด๋ฆฌ
- ๊ด๋ฆฌ์ ํ์ด์ง
- ๋ง์ดํ์ด์ง ๋์์ธ
- ์์ง ์ปจํ ์ธ
๊ธฐ์กด์ 1.0 ver ์ ์ฃผ์ ์ฌ์ฉ์ ๊ธฐ๋ฅ๋ค์ ๋ค์๊ณผ ๊ฐ์์ต๋๋ค.
-
๋ฉ์ธ์ง ๋๋ค๋ฐ์ก ๋ฐ ๋ต์ฅ
-
๋ฉ์ธ์ง ์ก์ ์๋ฅผ ์ ์ธํ ๋๋คํ 1๋ช ์๊ฒ ๋ฉ์ธ์ง๋ฅผ ์ ์กํ๊ณ Firebase ์๋ฆผ์ ๋ณด๋ธ๋ค.
-
๋ฉ์ธ์ง๋ฅผ ๋ฐ์ ์ฌ๋์ 1ํ์ ํํด์ ๋ต์ฅ์ ๋ณด๋ผ ์ ์๋ค.
-
-
๋๋ค๋ฐ์ค ๊ธฐ๋ฅ
-
ํ๋ฃจ ์ต๋ 3ํ, ๋ฉ์ธ์ง ์ ์ก์ ์ป์ ์ ์๋ค.
-
๋๋ค๋ฐ์ค์์ ๋ฑ๊ธ์ ๋ฐ๋ฅธ ํ๋ฅ ๋ก ํ๋กํ ์์ด์ฝ์ ํ๋ํ ์ ์๋ค.
-
-
๋ฌธ์ํ๊ธฐ ๊ธฐ๋ฅ
- ๋ฌธ์ํ๊ธฐ ๊ธ์ ๋ฑ๋กํ๋ฉด ๊ด๋ฆฌ์๊ฐ ๋ต๋ณ์ ๋ฌ ์ ์๋ค.
-
ํ๋กํ ์๋น์ค
-
๋๋ค๋ฐ์ค๋ฅผ ์ด์ด ๋ณผ ์ ์์ผ๋ฉฐ, ํ๋ํ ์์ด์ฝ ์ปฌ๋ ์ ์ ์ด๋ํ ์ ์๋ค.
-
ํ๋ํ ์์ด์ฝ์ ๊ฒฝ์ฐ ํ๋กํ ์์ด์ฝ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค.
-
Firebase ์๋ฆผ ์์ ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ ์ ์๋ค.
-
์ด์ ๋ฐ๋ผ 1.0์ ๋ฐฐํฌํ ์ดํ ๊ตฌ๊ธ ์ค๋ฌธ ๋ฐ ์ง์ ์ ์ธ ์ํต์ ํตํด ํผ๋๋ฐฑ์ ๋ชจ์๊ณ
ํผ๋๋ฐฑ์ ์์ฝํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
-
์ ์ ๊ฐ ๋ง์ผ๋ฉด ๋ง์์๋ก ๋ต์ฅ์ ๋ฐ๋๋ฐ๊น์ง ์๊ฐ์ด ์ค๋๊ฑธ๋ฆฐ๋ค.
-
๋ฉ์ธ์ง๋ฅผ ๋ณด๋ด๊ณ ํ๋ฃจ 3๋ฒ ๋๋ค๋ฐ์ค๋ฅผ ํ๋ํ๊ณ ๋๋ฉด ๋ต์ฅ์ด ์ค๊ธฐ๊น์ง ์ปจํ ์ธ ๊ฐ ์๋ค.
-
๋๋ค๋ฐ์ค ์ป๋ํ์ 3ํ ์ ํ์ด ๋๋ฌด ์ ์๊ฒ ๊ฐ๋ค.
-
๋ต์ฅ๋ฉ์ธ์ง ์์ ์ ์ด๋ค ๋ฉ์ธ์ง์ ๋ต์ฅ์ธ์ง ์์ ์์ผ๋ฉด ์ข๊ฒ ๋ค.
-
์๋ฆผ ์์ ์ด ์ ์๋๋ค.
์ด์ ๋ฐ๋ผ ์ ํฌํ์ด ๊ฒฐ์ ๋ด๋ฆฐ 1.1 ํจ์น์ฌํญ์ ์๋์ ๊ฐ์ต๋๋ค.
-
๋ฉ์ธ์ง ์ ์ก ์์คํ ์ ์ฐํธํจ ์์คํ ํจ์น
-
๋ฐ์ผ๋ฆฌ ๋ฉ์ธ์ง ๊ธฐ๋ฅ ํจ์น
-
๋๋ค๋ฐ์ค ํ๋๋ฐฉ๋ฒ ๋ณ๊ฒฝ
-
๋ต์ฅ ๋ฉ์ธ์ง์ผ ๋, ์ด๋ค ๋ฉ์ธ์ง์ ๋ต์ฅ์ธ์ง ํ์ธํ ์ ์๋ ๋ชจ๋ฌ ์ ๊ณต
- ๋ชจ๋ฐ์ผ ํ๊ฒฝ์์ ๋ฉ์ธ์ง๋ฅผ ์ฐ๋ ํ์ด์ง์ ์ง์ ์ ํค๋ณด๋๊ฐ ์ผ์ง๋ ๋ฌธ์ ํด๊ฒฐ
- IOS ํ๊ฒฝ์์ Firebase ์๋ฆผ์ด ์ค์ ๋์ง ์๋ ๋ฌธ์ ํด๊ฒฐ
- ํ ์คํธ, ์ด๋ฏธ์ง, ์์ฑ 3๊ฐ์ง์ Media Type ์ง์
- ์ ์ก ์ 30% ํ๋ฅ ๋ก ๋๋ค๋ฐ์ค ํ๋
- ์ ์ก ์ ๋๋ค ๋์์ด ์๋ ๊ณตํต ์ฐํธํจ์ผ๋ก ์ ์ก
- ์ฐํธํจ์์ ๊ฐ์ ธ์จ ๋ฉ์ธ์ง๋ My Message์์ ํ์ธ๊ฐ๋ฅ
- ๋ต์ฅ ๋ฉ์ธ์ง์ ๊ฒฝ์ฐ My Message์ ๋ณด๊ด๋๋ฉฐ, ์ด๋ค ๋ฉ์ธ์ง์ ๋ต์ฅ์ด์๋์ง from ๋ฒํผ์ ํตํด ๋ชจ๋ฌ๋ก ํ์ธ๊ฐ๋ฅ
- My Message์์ ๋ฉ์ธ์ง ์ ๊ณ ๊ฐ๋ฅ
ํ ์คํธ ๋ฉ์ธ์ง ์ ์ก | ์ด๋ฏธ์ง ๋ฉ์ธ์ง ์ ์ก | ์์ฑ ๋ฉ์ธ์ง ์ ์ก |
---|---|---|
![]() |
![]() |
![]() |
My Message | ์ ๊ณ |
---|---|
![]() |
![]() |
- ๋น์ผ ๋ ์ง๋ฅผ ๊ธฐ์ค์ผ๋ก 00:00:00 ~ 23:59:59 ์ฌ์ด์ ๋ฉ์ธ์ง๋ฅผ ๋ณผ ์ ์์
๋ฐ์ผ๋ฆฌ ๋ฉ์ธ์ง |
---|
![]() |
- ์ต๋ช ์ผ๋ก๋ถํฐ ์ ์ก๋ ๋ฉ์์ง๋ ์ฐํธํจ์ ์ ์ฅ
- ์ฌ์ฉ์๋ ์ฐํธํจ์์ ํด๋นํ๋ ๋ฉ์์ง๋ฅผ ๊ฐ๋ก์ฑ ์ ์์
- ๊ฐ๋ก์ฑ๋ฉด ์ฌ์ฉ์์ ๋ฉ์์ง๋ก ๊ท์๋๋ฉฐ, 1ํ์ ํํด์ ๋ต์ฅ ๊ฐ๋ฅ
์ฐํธํจ |
---|
![]() |
- ์ฌ์ฉ์๋ ๋ฌธ์ํ๊ธฐ๋ฅผ ํตํด ๊ด๋ฆฌ์์ ์ํตํ ์ ์์
๋ฌธ์ํ๊ธฐ | ๊ด๋ฆฌ์ ๋ต๋ณ ํ |
---|---|
![]() |
![]() |
- ๊ด๋ฆฌ์๋ ๊ณต์ง์ฌํญ์ ์์ฑ ๋ฐ ์์ ํ ์ ์์
- ๊ด๋ฆฌ์๋ ๋ฌธ์์ฌํญ๋ค์ ์กฐํํ๊ณ , ๋ต๊ธ์ ๋ฌ ์ ์์
- ๊ด๋ฆฌ์๋ ์ ๊ณ ๋ด์ญ์ ์กฐํํ ์ ์๊ณ , ์ฌ์ฉ์ ์ ์ง ์ฒ๋ฆฌ๋ฅผ ํ ์ ์์
- ๊ณต์ง์ฌํญ ์์ฑ์ ๋ชจ๋ ํ์์๊ฒ Firebase ํธ์์๋ฆผ ๋ฐ์ก
๊ณต์ง์ฌํญ | ์ ๊ณ | ๋ฌธ์์ฌํญ |
---|---|---|
![]() |
![]() |
![]() |
- ์ฌ์ฉ์๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋ฐ ํฌ๊ทธ๋ผ์ด๋์์ FCM ์๋ฆผ์ ์์ ํ ์ ์์
๊ณต์ง์ฌํญ ๋ฐฑ๊ทธ๋ผ์ด๋ | ๊ณต์ง์ฌํญ ํฌ๊ทธ๋ผ์ด๋ | ๋ต์ฅ ๋ฐฑ๊ทธ๋ผ์ด๋ | ๋ต์ฅ ํฌ๊ทธ๋ผ์ด๋ |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |