์ต๊ทผ์ ๊ทผํฉ
์ต๊ทผ์ TIL์ ๋ชป์ด์ง ์ค๋๋๋ค. ์์ฆ์ ๋๋ ์ธํด์ ํ๊ณ ์๊ณ ,๊ฐ๋ฐ์๋ก์์ ์ฑ์ฅ์ ๋์์ด ๋์ง ์์ผ๋ฆฌ๋ผ๋ ์ด์ผ๊ธฐ๋ฅผ ๋ง์ด ๋ค์๋ ๊ณณ์์, ๊ธฐ๋ํ๋ ๊ฒ ๊ทธ ์ด์์ผ๋ก ๋ง์ ๊ฒ๋ค์ ๋ฐฐ์ฐ๊ณ ์๋ค.
์ ๊ธฐํ๊ฒ๋ ๋ด๊ฐ ์ ํํ ์ฝํ๋ ๋ถ๋ถ๋ค์ ๋ชจ๋ ๋ฐฐ์ฐ๊ฒ ๋๋ฉด์, ์ ๋ฐ์ ์ผ๋ก ์ดํด์ ํญ์ด ๋์ด์ง ๊ธฐ๋ถ์ด๋ค.
๊ฐ๋ น DB๊ฐ ์ฝํ์๋๋ฐ, ๋ง์นจ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง์ด ๋ค๋ฃจ๋ ๋ถ์๋ก ๋ฐฐ์น๋๋ฉด์ ์๊ฐ์ง๋ ๋ชปํ๊ฒ mysql๊ณผ NoSQL์ ์ ๋ถ ๋ค๋ฃจ๋ ๊ฒฝํ์ ํ๊ณ ์๋ค. ๊ฒ๋ค๊ฐ ํ์์ ๊ด์ฌ์ด ๋ง์๋ ๊ฒ์ ์์ง์ธ Elastic Search์ ๋ํด์๋ ๊ณต๋ถํ๊ณ ์ ์ฉํด๋ณด๋ ๊ฒฝํ์ ์์๋ณด๊ณ ์๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํนํ ๊ณต๋ถํ ๋์ ๋์ฉ๋ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ์ผ์ด ์๋ค๋ณด๋, ์๋ จ์ ๋ง์ด ํ๊ธฐ๊ฐ ์ด๋ ค์ ๋๋ฐ, ์ ๋ง ์ข์ ๊ธฐํ๋ค.
ํน์ ๋ ๊ถ๊ธํดํ๋ ํ๋์จ์ด ์ชฝ๊ณผ์ ํต์ ์ ๋ค๋ฃจ๊ธฐ๋ ํ๊ณ , ์ง๋ ๋ฒ ํ๋ก์ ํธ์์ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด, ์๋์ด๋ ธ์ ์ฐ๊ฒฐ๋ ์ผ์๋ค๊ณผ ํต์ ์ ํตํด ์ผ์ ์กฐ์์ ํ๊ณ , ์ผ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ๊ทธ ๊ฐ์ ๋ค๋ฅธ ๋จ์ ์ด์ฃผ๋ ์์ ๋ ํด๋ณด์๋ค.
๊ทธ๋๋ง ํ ์ค ์๋๊ฒ ๋ฐฑ์๋๋ค๋ณด๋, ๋ฐฑ์๋ ๊ด๋ จ ์์ ๋ค์ ๊ฝค๋ ๋ง์ด ํ๋ค. ์ด ์ญ์๋ ํ์์ ์ ํด๋ณด์ง ๋ชปํ๋ ํ๋ ์์ํฌ๋ค์ ์ฌ์ฉํ๋ค. ํ ๋ฒ์ ์คํ๋ง๋ถํธ๋ฅผ ํ๊ณ , ํ ๋ฒ์ ์งง๊ฒ ์ฅ๊ณ ๋ฅผ ์จ๋ณด๊ณ , ๊ธธ๊ฒ Flask๋ฅผ ์จ๋ณด๊ณ ์๊ธฐ๋ ํ๋ค. ๋งค์ฐ ๋ง์กฑ์ค!
๊ฝค๋ ์ฌ๋ฌ ๊ฐ์ง ์คํ์ ์ฌ์ฉํด๋ณด๊ณ ์๋๋ฐ, ์ด๊ฑธ ๊ณผ์ฐ ์คํ์ด๋ผ๊ณ ํ ๋งํผ ๋ด๊ฐ ๊น๊ฒ ์๋์ง๋ ์ ๋ชจ๋ฅด๊ฒ ๋ค๋งโฆ ์ธํด ๊ธฐ๊ฐ ๋์ ๋๋ฆ ๋ฌด์ธ๊ฐ๋ฅผ ๋ฐฐํฌ๊น์ง ํ ์ ์์ ์ ๋์ ๊ฒฝํ์ ํด๋ณธ ์คํ์ ๋ค์๊ณผ ๊ฐ๋ค.
- ์คํ๋ง๋ถํธ, ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ AWS Beanstalk์ ๋ฐฐํฌํ๊ธฐ
- pretrained ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ์์AI, ๊ทธ๋ฆฌ๊ณ ์น์บ ๋จ๊ณผ ์ฐ๊ฒฐ๋ OpenCV
- ๋ฐ์ดํฐ๋ถ์ : ์ ์ฒ๋ฆฌ, ํต๊ณ ๊ทธ๋ฆฌ๊ณ ๊ฐ๋จํ ๋ชจ๋ธ ์์ฑ(ํ๋ผ๋ ๊ฒ๋ง ํ ์ ์๋ ์ด๊ธ์ ์์ค..ใ ใ ๊ทธ๋๋ ํ๊ธด ํ๊ฑฐ๋๊น!)
- ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด (์ฒดํ ์ ๋)
- ELK ํนํ Elastic Search ๊ทธ๋ฆฌ๊ณ ๊ทธ ์์์ NoSQL ์ฟผ๋ฆฌ
- json data bulk
- ์ฌ๋ฌ aggregation
- indexing
- ์๋ง์ ๋ฐฐํฌ : EC2, Beanstalk, ๊ทธ๋ฆฌ๊ณ ์ด์ ์ด๋ค epc๋ฅผ ๋ฐ๋๋ผ๋ ์๋ฒ๋ฅผ ์ฌ๋ฆด ์ ์๋ ๊ฒฝํโฆ ๊ทธ๋ฆฌ๊ณ ์ง์ฅ๊ฐ์ port์์ ์ธ์
- 20% ์ ๋๋ ์ต์ํด์ง ๋ฆฌ๋ ์ค ๊ทผ๋ฐ ๊ตฌ๊ธ๋ง์ ๊ณ๋ค์ธ..
- Jenkins : ์ง์ฅ๊ฐ์๋ Jenkins ์ฐ๊ฒฐ๊ณผ ์๋ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ.. ๊ทธ๋ฆฌ๊ณ ์ ธ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํด์ ์๋ ๋ฐฐํฌ๋๊ฒ ํ๊ธฐ
- ํผ์๋ง์ ๋๊ฒฐ
- HW, ์น/์ฑ, DB์ ๋ชจ๋ ํต์ ์ ํ๋ฉด์ ๋ด๊ฐ ๋ง๋ค์ด๋ธ ๊ธฐ์ ๋ถ์ฑ๋ฅผ ์น์ฐ๊ณ ์๋ ๋
- ์๊ฐ์ ์ซ๊ฒจ API๋ฅผ ์์ฐํด๋ด๋ฉด์ ๋ง๋ค์ด๋ธ ๊ธฐ์ ๋ถ์ฑ๋ฅผ ๋ฆฌํฉํ ๋งํ๊ธฐ์ํด ๋๋ฌผ ํ๋ฆฌ๋ฉฐ ์ฒ์๋ถํฐ ์ ์ง์๊ณ ๋งค๋ฒ ๋ค์งํ๋ ์ค์ค๋ก ๋ถ๋ฌ์จ ์ฌ์๋ค
- ์๋ง์ผ๋ก (๋ด๊ฐ) ์ง๋์ DB๋ฅผ ์์ตํ๊ธฐ ์ํด ์๋ง์ผ๋ก ์ง๋์ ์ฟผ๋ฆฌ๋ฅผ ์์ตํ๊ธฐ ์ํด ์๋ง์ผ๋ก ์ง๋์ API๋ฅผ ์์ตํ๊ธฐ
- ์๋ง์ผ๋ก ์ค์ ํด๋ ์๋ฒ ์ ํ ์ ์์ตํ๊ธฐ ์ํด ์๋ง์ผ๋ก ๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉฐ ์ ์ ๋์ด๊ฐ๋ ๋ชจ๋ ์๋ง๊ณผ ๋ง์ฃผํ ๋
- ์๋ง์ผ๋ก ์ค๊ณํ ๊ตฌ์กฐ๋ฅผ ์์ตํ๊ธฐ ์ํ ์ง์ฅ๊ฐ์ ๊ณต๋ถ (์๋ผ์คํฑ์์น.. ๊ฐ๋ง ์๋๋ค)
- ๊ทธ๋ ๊ฒ ์ธ์์ง์ง ์๋ ์ธํ ๋ฆฌ์ ์ด ๋จ์ถํค๋ค์ ์ด๋ป๊ฒ๋ ์ฌ์ฉํ๋ฉด์ ์ ํต์ฆ์ ์ค์ด๊ณ ์๋ ๋์์ .. ๋ง์ฐ์ค๊น์ง ์ฐ๊ธฐ์๋ ์์ด ๋๋ฌด ์ํ๊ณ .. ๋ ธํธ๋ถ ํค๋ณด๋๋ ์ด์ ์์ด ์์ด์ง ๊ฒ ๊ฐ๋ค ๋๋ฌด ์ํ๋ค ใ ใ
- ๊ฐ์์ค๋ฌ์ด ์ ์์ผ ๊ทธ๋ฆฌ๊ณ ์๊ฐ๋ณด๋ค ๋งค์ฐ ์ข์๋ ์ ์์ผ
- ๊ทธ ์์ค์ Jira๋ ์จ๋ณด์์
- git์ ์ด์ ์์ฐ๋ฉด ์๋จ..
์ด๋ฐ ๊ธฐ์ ์ ์ธ ๊ฒ๋ค์ ๋ฐฐ์ ๋ค. ์ฐ๋ค๋ณด๋ ์คํ์ด ์๋๋ผ ๊ทธ๋ฅ ๊ฒฝํํ ์ ๋ฌํ ์ผ๋ค์ ์์ ํ ๊ฒ ๋์ด๋ฒ๋ ธ์ง๋งโฆ
ํนํ ์์ฆ์๋ ์ต๋ํ ๋น ๋ฅธ ๊ฐ๋ฐ์ ์ํด ์ธํ ๋ฆฌ์ ์ด๋ฅผ ์์ฃผ ์ ์ฐ๊ณ ์๋คโฆ ์ฒ์์ผ๋ก rainbow brackets๋ ๋ฐ์๋ค. ๋ฉ์์ด๋ณด์ด๋ ค๊ณ ๊ฐ ์๋๋ผ ์ ๋ง ๊ตฌ๋ถํ ์๊ฐ ์์ด์โฆ ์ด์ ์ ๋งํ ๊ธฐ์ ์ ์ด๊ธ์ ๋งํผ์ ๊ธ๋ฐฉ ํ ์ ์์ ๊ฒ ๊ฐ๋ค. ๋ฌผ๋ก ๋๋ฌด๋ ์ฝํ ํ๋ก ํธ์๋๋ ์ ์ธโฆ ์ ๊ธฐํ๊ฒ ์คํ๋ ค ์ฑ์ ํ ๋งํ ๊ฒ ๊ฐ์๋ฐ ์น FE๋ ์ ๋ง ๋ชจ๋ฅด๊ฒ ๋ค. ๋์ค์ ๊ผญ ํ๋ฒ ์ ๋๋ก ๋ฐฐ์๋์ผ์งโฆ
๊ทธ๋ ๋คโฆ ๋น ๋ฅธ ๊ฐ๋ฐ์ ํ๊ฒ ๋์ด๋ฒ๋ ธ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฒ์ ์ ํด๋ ์ค๊ณ๊ฐ ์ผ๋ง๋ ์ค์ํ์ง, ์ฒ์ ์ ์ง๋ ์ฝ๋๊ฐ ์ผ๋ง๋ ์ค์ํ์ง๋ฅผ ๋ผ์ ๋ฆฌ๊ฒ ๋๋๋ค. ๋๋๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ณต๋ถ๋ ์ข ํ๊ณ , FE ๊ณต๋ถ๋ ์ข ํ๊ณ , Spring๋ ์ค๋๋ง์ ํด์ผ๊ฒ ๋ค. ์๋ฌดํผ ๊น๋จน์ ๊ฒ ๊ฐ์์ ๊ธฐ์ต๋๋ ๋๋ก ์จ๋๋ค. ์กฐ๊ธ ๋ ๋ฏธ๋ฆฌ ๊ธฐ๋ก์ ์์ํ๋๋ผ๋ฉด ์ข์๊ฒ ์ง๋งโฆ ๋๋ฌด ๋ฐ๋นด๋ค
์ฌ์ค ์ค๋๋ ๋ฐ์๋ฐ ์๋ฒ ํฐ์ ธ์ ํ ์ผ์ด ์๊ณ API ์ง๊ธฐ์๋ ๋ฐ์ดํฐ๊ฐ ์๋์์ ์๊ฒ๋ ๋ชปํ๊ณ ์๋ค. ์ธํ ๋ฆฌ์ ์ด๋ผ๋ ๋ค์ฌ๋ค๋ณด๊ณ ์์ด์ผ ๋ญ๋ผ๋ ํ ๊ธฐ๋ถ์ด์ด์โฆ ๊ดํ ์ค๋๋ง์ TIL์ด๋ผ๋ ์จ๋ณธ๋ค.
-๋-