๐ฅ SSAFY 2ํ๊ธฐ ๋ ๋ฒ์งธ ํ๋ก์ ํธ(ํนํ ํ๋ก์ ํธ) ์ต์ฐ์์ ์์
๋๋ฒ์งธ ํ๋ก์ ํธ๋ฅผ ๋ง์น๊ณ ํ๊ณ ํ๋ ๊ธ๋ก ๊ฒฝํํ ๊ฒ๊ณผ ๋๋์ ์ ์์ ๋กญ๊ฒ ์ ๋ฆฌํ์์ต๋๋ค :)
์ฐ๋ฆฌํ ๊ฐ๋ฐ ์์น์ด์ ์ ๊ฐ๋ฐ ์ฒ ํ์ธ '์ผ๋จ ๋ฐ๋ณด๋ฉ์ฒญ์ด ๋ฐฉ์์ผ๋ก ๊ฐ๋ฐ์ ๋๋ด์' ๋ฅผ ์๊ณ ๊ณ์๋ฉด ๊ธ ์ฝ๋๋ฐ ๋์์ด ๋์ค ๊ฒ ๊ฐ์ต๋๋ค ..
(์ผ๋จ ๊ธฐ๋ฅ์ด ๊ตด๋ฌ๊ฐ๊ฒ ๊ฐ๋ฐ์ ๋น ๋ฅด๊ฒ ์๋ฃํ ๋ค์, ์ต์ ํ ์์ ์ ์ํ ๊ณ ๋ฏผ์ ํด๋ณด๊ณ ์ด๋ฅผ ์์ ํด๋ณด์! ์ ๋๋ค ใ ใ )
๋๋ ์ฐธ .....ใ ใ ใ ใ ใ ํ๋ก์ ํธ ๋๋์ง 3๋ฌ ๋ฐ์ด ์ง๋๊ฐ๋๋ฐ, ์๋ฃํ๊ณ ๋ฆฌํฉํ ๋งํ ์ ์๋ ๋ถ๋ถ๋ค ์๊ฐํด๋ณด๋ฉด์ ํ๋ก์ ํธ ํ๊ณ ๋ฅผ ๊ฐ๋จํ๋ผ๋ ๋จ๊ฒจ๋์ผ๊ฒ ๋ค ์๊ฐ์ด ๋ค์ด์ ๋ ์ํ์ง๊ธฐ์ ์ ์กฐ๊ธ์ด๋๋ง ์ ์ด๋ณด๋ คํฉ๋๋ค ~
๊ณตํตํ๋ก์ ํธ๋๋ ์ฌ๋ฌ ๊ธฐ์ ๋ง์ด ์ฌ์ฉํ๊ณ , ์ป์ ๊ฒ ๋ง์์๋๋ฐ ํนํํ๋ก์ ํธ๋๋ !! ์ป์ ๊ฒ ๋ง์์ต๋๋ค.
ํผ์์ ๊ณ ๋ฏผํ๊ณ ์ป์ด๊ฐ ๊ฒ๋ ๋ง์์ ๋ฟ๋๋ฌ, ์ธํ๋ผ ์ง์์ด๋ ๋ชจ๋ํฐ๋ง ์์คํ (elk, prometheus)์ ๊ฐ์ ๊ฒ๋ค๋ ์ง์ ์์ ํ์ง ์์์ง๋ง, ํ์๊ฐ ๊ธฐ์ ๊ณต์ ๋ฅผ ํ๊ฑฐ๋ ์ด์ผ๊ธฐ๋ฅผ ๋ง์ด ํ๋ฉด์ ์ง์ ๊ฐ๋ฐํ ๊ฒ ๋ชป์ง์๊ฒ ๋ง์ด ์ ์ ์์์ต๋๋ค.
ํนํ ์ธํ๋ผ ํ๊ฒฝ๊น์ง ๊ณ ๋ คํด์ ํผ์ ๊ณ ๋ฏผ ๋ง์ด ํ๊ณ ์ฐพ์๋ณด๋ฉด์ .... ์ ๋ง ๋ง์ด ์๊ฒ ๋ ๊ฒ ๊ฐ์์. ํผ์์๋ ํ ๋ฒ ๊ตฌ์ถํด๋ณผ ์์ ์ธ๋ฐ ... ๊ทธ๋ผ ec2๋น์ฉ ํญํ ๋ง๊ฒ ๋ค.
์์ฌ์ ๋ ์ .. ๊ทธ๋ฌ๋ ์ด์ ๋ !!!
ํนํ, ์ด๋ฒ ํ๋ก์ ํธ๋ ํผ์์ ๊ณ ๋ฏผํ ๋ถ๋ถ๋ ๋ง์๊ณ ๊ฐ๋ฐ ๋ง๋ฐ์ง ์์ ์ ์ต์ ํ๋ฅผ ํด๋ณด๊ณ ์ถ์ ๋ถ๋ถ์ด ์์๋๋ฐ ์๊ฐ์ด ์ด๋ฐํด์ ์์ฝ๊ฒ ๋ชปํ์์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ ํฌ ์๋น์ค์ ๋ชฉ์ ์ค ํ๋์ธ ์ค์๊ฐ์ฑ์ ๋ณด์ฅํ ์ ์์ผ๋ฉด์, ํธ๋ํฝ์ด ๋ชฐ๋ ธ์๋ ์๋ฒ๋ฅผ ์ํํ์ฅ์ํค๋ฉด์๋ ์๋ฒ ์์์ ์๋ ์ ์๋ ๋ฐฉ๋ฒ์ ๋ํด ์ ๋ง ์ค๋์๊ฐ ๊ณ ๋ฏผํ์๋๋ฐ์.
(ํ๋ก์ ํธ ๊ธฐ๊ฐ์๋ kubernetesํ๊ฒฝ์์๋ ๋ถ๊ตฌํ๊ณ ๋ฐ๋ณด๋ฉ์ฒญ์ด ๋ฐฉ์์ผ๋ก ๋จ์ผ์๋ฒ๋ก ํ์ ์์ผ๋์ .... ์ง์ง ๋ ์ ํ ์ ์๋๋ฐ, ์๊ฐ๋ ์๊ณ ์ฑ์ฉ์์ฆ์ด๋ผ ๋๋ฌด ๋ฐ๋นด๊ธฐ์ ํ ์ ์์ด์ ๋๋ฌด๋๋ฌด๋๋ฌด ์์ฌ์ ์ต๋๋ค.)
๊ณ์ ์๊ฐํ๋ค ์ต๊ทผ์์ผ ๊ด์ฐฎ์ ๋ฐฉ๋ฒ์ ๋ ์ฌ๋ฆฌ๊ณ ๊ตฌ์ฒดํ์์ผ์ ์๋กญ๊ฒ ์ฌ์ฉํด๋ณผ ๊ธฐ์ ์ด๋ ๋ฆฌํฉํ ๋ง์ ์ด๋ค์์ผ๋ก ํ ์ง๋ ๋ค๋ฅธ ๊ฒ์๋ฌผ์์ ๋ค๋ค๋ณด๊ฒ ์ต๋๋น ๐
์ง๊ธ์ ๊ทธ๋ฅ ๊ฐ๋จํ ํ๋ก์ ํธ ํ๊ณ !!!
๊นํ๋ธ ๋งํฌ
https://github.com/SunYerim/StockOfGalaxy
GitHub - SunYerim/StockOfGalaxy: ๐ฅ SSAFY 11๊ธฐ ํนํ ํ๋ก์ ํธ ์ต์ฐ์์ - ์ผ์ฑ์ ์ ์ฃผ์ํ์ฌ / ๊ณผ๊ฑฐ์ ํ
๐ฅ SSAFY 11๊ธฐ ํนํ ํ๋ก์ ํธ ์ต์ฐ์์ - ์ผ์ฑ์ ์ ์ฃผ์ํ์ฌ / ๊ณผ๊ฑฐ์ ํ์ฌ์ ์ฃผ์ ์ ๋ณด ๋ฐ ๋ด์ค๊ธฐ์ฌ ์ ๋ณด ์ ๊ณต ์๋น์ค 'Stock Of Galaxy' - SunYerim/StockOfGalaxy
github.com
์ ํฌ๋ ์ฐ์ '๋น ๋ฐ์ดํฐ - ๋ถ์ฐ' ๋๋ฉ์ธ์ ์ ํํด์ ํ๋ก์ ํธ๋ฅผ ์งํํ์๊ณ ,
์ต์ข ์ ์ผ๋ก "๊ณผ๊ฑฐ์ ํ์ฌ์ ์ฃผ์ ์ ๋ณด ๋ฐ ๋ด์ค๊ธฐ์ฌ ์ ๋ณด ์ ๊ณต ์๋น์ค"๋ฅผ ๊ธฐํํ์ฌ ๊ฐ๋ฐํ์ต๋๋ค.
๋ด์ค ๋ฐ์ดํฐ๋ง ํด๋ 300๋ง๊ฑด ์ด์์ด์์ผ๋ฉฐ, ์ฃผ์ ๋ฐ์ดํฐ ๊ฐ์ ๊ฒฝ์ฐ๋ ์ค์๊ฐ์ผ๋ก ์ ๊ณตํ๋ ๊ฒ์ ๊ณผ๊ฑฐ ๋ฐ์ดํฐ๋ ํจ๊ป ์ ๊ณตํ์ฌ 50๋ง๊ฑด ์ด์์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ค์ต๋๋ค.
์ ๋ ํ์์ ์ฃผ์์ ๊ด์ฌ์ด ์๊ธฐ๋ ํ๊ณ , ์ค์๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ค๋ณด๊ณ ์ถ์ด์ ์ฃผ์ ๋๋ฉ์ธ๊ณผ, ํ์๊ด๋ฆฌ ๋ฐฑ์๋ ๊ฐ๋ฐ ๋ถ๋ถ์ ๋๋งก์ ํ์ต๋๋ค.
์ค์๊ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌํ๋ ๋ถ๋ถ ๊ฐ์ ๊ฒฝ์ฐ๋ 'ํ๊ตญํฌ์์ฆ๊ถ <-> ์คํ๋ง ์๋ฒ, ์คํ๋ง ์๋ฒ <-> ์๋น์ค ํด๋ผ์ด์ธํธ' ์ด๋ฐ ๊ตฌ์กฐ๋ก ์์ ์ ํ์ด์ผํ๊ธฐ์ ์๊ฐํ ๋ถ๋ถ์ด ๋ง์ ๊ฒ ๊ฐ์๊ธฐ๋ ํ์ต๋๋ค.
์ ํฌ๋ kubernetes ํด๋ฌ์คํฐ ํ๊ฒฝ์ผ๋ก ์๋ฒ ๊ตฌ์ถ์ ํ์์ผ๋ฉฐ, MSA๊ตฌ์กฐ๋ฅผ ๋์ ํ์์ต๋๋ค.
์ฌ์ฉ์ ํธ๋ํฝ์ด ๋ชฐ๋ฆด ๊ฒฝ์ฐ pod์ด ์๋ ์์ฑ๋๋๋ก ํด๋์ง๋ง, ์ฃผ์ ๋๋ฉ์ธ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋จ์ผ ์๋ฒ ํ๊ฒฝ์ผ๋ก ํ์ ํ์ฌ ์์ ์ ์งํํ์์ต๋๋ค... ์ฒ์๋ถํฐ ๊ทธ๋ฌ๋ ๊ฑด ์๋์๊ณ ์ ...
์ฐ์ ์ ๋ฐ๋ณด๋ฉ์ฒญ์ด ๋ฐฉ์์ผ๋ก ํด๋ณด์! ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ์ ๋ง๋ฌด๋ฆฌ์ง๊ณ ์ต์ ํ๋ฅผ ํด๋ณด์. ๋ง์์ ๋จน์๋๋ฐ... ๊ทธ๋๋ ์ ์ฌ์ง์๋ ํ์ฐธ ๋ง์ด ํ ๋๋ผ ์ฌ์ ๋ ์์์ ๋ฟ๋๋ฌ, ์ค์๊ฐ๋ก์ง ์๋ฒ๋ฅผ ๋ถ๋ฆฌ์ํค๊ณ kafka์ ๊ฐ์ ๋ฉ์์งํ๋ฅผ ๋์ ํ๋ค๊ณ ๊ฐ์ ํ์๋ ์ค์๊ฐ์ฑ ๋ณด์ฅ์ ์ด๋ค์์ผ๋ก ํด์ค์ง, latency๋ฅผ ์ด๋ป๊ฒ ์ค์ผ์ง, batch์ฒ๋ฆฌ๋ฅผ ํ๋ค๊ณ ํ์๋ ์๋ฒฝํ ์ค์๊ฐ ์ ๋ณด๋ฅผ ์ ๊ณตํ์ง ๋ชปํ ๊ฑฐ ๊ฐ์๋ฐ ์ด๋ป๊ฒ ํด์ผํ์ง .. ์จ๊ฐ ๊ณ ๋ฏผ์ด ๋ค์ด์ ๋์ค์ ๊ผญ ํผ์์๋ผ๋ ์ต์ ํ๋ฅผ ํ์. ๋ผ๊ณ ์๊ฐํ์ต๋๋ค.
์์ ๋๋ฌด ๋์์์ด ์ ์ ๊ฒ ๊ฐ์๋ฐ์ .....
๊ทธ๋์ ์ ๋ ํฌ๊ฒ ์ธ ๊ฐ์ง๋ก ๋ถ๋ฅํด์ ์์ฑํ๊ณ ๊ธ์ ์ด๋ง ๋ง๋ฌด๋ฆฌ ์ง๊ฒ ์ต๋๋ค.
๋ญ ํ๊ณ ์ถ์๋๋ฐ?
1. ํ๋์ ์ฃผ์์๋ฒ๋ฅผ ๋ถ๋ฆฌํ๊ณ ์ถ์์ต๋๋ค.
2. ๋ฐ์ดํฐ์์ด ๋ง๋ค๋ณด๋ ๊ณผ๊ฑฐ ์ฃผ๊ฐ ์ ๋ณด ์กฐํํ ๋๋ ์๊ฐ์ด ๋๋ฌด ์ค๋ ๊ฑธ๋ ค์ ์ต์ ํ ์์ ์ ํ๊ณ ์ถ์์ต๋๋ค.
3. kubernetes ํด๋ฌ์คํฐ ํ๊ฒฝ์ ์ด์ ์ ์ ๋๋ก ํ์ฉํ๊ณ ์ถ์์ต๋๋ค ~!!!!! ํธ๋ํฝ ๋ชฐ๋ฆฌ๋ฉด ์๋ฒ๊ฐ ์ํํ์ฅ ๋๋๋ก์ .... pod ์์ฑ๋์ด๋ผ.
์?
1. '์ฃผ์'์ด๋ผ๋ ๊ฒ ์ค์๊ฐ ๋ฐ์ดํฐ + ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ๋์์ ์ ๊ณตํด์คฌ์ด์ผ๋๋๋ฐ, ์ด๊ฑฐ๋ฅผ ๋ฐ๋ณด๋ฉ์ฒญ์ด ๋ฐฉ์์ผ๋ก ์ผ๋จ ๊ธฐ๋ฅ ๊ตด๋ฌ๊ฐ๊ฒํ์! ํด์ ํ ์๋ฒ์์ ๋ชจ๋ ๊ฑธ ์ฒ๋ฆฌํ๋ค๋ ๊ฒ ๋๋ฌด๋๋ฌด๋๋ฌด ....!!! ์์ฝ๊ฒ ๋๊ปด์ก์์ต๋๋ค.
2. ๊ทธ๋์ ์ ๋ ์ฒ์์ ์ค์๊ฐ ์ฃผ๊ฐ ์ ๋ณด ์ ๊ณต๋ง์ ๋ด๋นํ๋ ์๋ฒ, ๊ทธ๋ฆฌ๊ณ ๊ทธ ์ธ ๊ธฐ๋ฅ์ ๋ด๋นํ๋ ์๋ฒ ์ด๋ ๊ฒ ๋ถ๋ฆฌ์ํค๊ณ ์ ํ์ต๋๋ค.
์ด๋ ๊ฒ ํ์๋, ์ ์ ๊ฐ์ ๊ฒฝ์ฐ๋ ํ๊ตญํฌ์์ฆ๊ถ๊ณผ websocketํต์ ์ ํตํด ๊ตฌ๋ ํ๊ณ ์ํ๋ ์ข ๋ชฉ์ ๋ํ ์ฃผ๊ฐ์ ๋ณด๋ง ๊ฐ์ ธ์ค๋ ์ญํ ๋ง ํ๋ฉด ๋๊ณ , ๊ทธ๋ฆฌ๊ณ ํ์ ๊ฐ์ ๊ฒฝ์ฐ๋ ๊ทธ ์ ๋ณด๋ฅผ ์ ํฌ ์๋น์ค ํด๋ผ์ด์ธํธ๋ค์๊ฒ ์ ๊ณตํด์ฃผ๋ ์ญํ ๋ง ํ๋ฉด ๋์ผ๋๊น์. (ํฌ๊ฒ ๋ณด๋ฉด)
3. ๊ทธ๋ฆฌ๊ณ ์ค๊ฐ์ ๋ฉ์์งํ๋ฅผ ๋์์ publish, subscribeํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌ์ํ์์ต๋๋ค. ์ด๋ ๊ฒ๋๋ฉด, ์ค์๊ฐ์ ๋ณด๋ฅผ ๋ด๋นํ๋ ์๋ฒ๋ ๋จ์ผ์๋ฒ๋ก ํ์ ์์ผ๋ฌ๋ ๋ฌด๊ดํ๊ณ , ์ค์๊ฐ ์ ๋ณด ์ธ์ ์ธ ๊ฒ์ ๋ด๋นํ๋ ์๋ฒ๋ ์๋ฒ ์ํํ์ฅ ๋๋๋ก ์ ์ฉํ๋ฉด ๋๊ฒ ๋ค ์ถ์์ต๋๋ค. ๊ทธ๋ ์ง๋ง, '๊ทธ๋ผ ๊ทธ ์ค์๊ฐ์ฑ ์ด๋ป๊ฒ ๋ณด์ฅํ์ง? latency์ด๋ป๊ฒ ์ค์ด์ง?' ๋ผ๋ ๊ณ ๋ฏผ์ด ๊ฐ์๊ธฐ ํ๋ฐ๋ฐ๋ฐ ๋ค์ด์ ๊น๋น ...
4. ๋ฐ์ดํฐ ์์ด ๋ง์์ ์ ๋ณด ์กฐํํ ๋ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฐ๋ค๋ ๊ฑด, ์๋น์ค๋ฅผ ์ด์ฉํ๋ ์ ์ ์ ์ฅ์์ ๋๋ฌด ์น๋ช ์ ์ธ ๋จ์ ์ด๊ธฐ ๋๋ฌธ์ ...!!
5. ์ด ๋ถ๋ถ์ gateway์์ ์บ์ฑ์ฒ๋ฆฌ๋ฅผ ํ๊ณ , db์ธ๋ฑ์ฑ์ฒ๋ฆฌ๋ฅผ ํด์ ์ต์ ํ์์ ์ ์๋ฃํ์ต๋๋ค !!!
6. ๋ฌด์๋ณด๋ค ์ฃผ์ด์ง ํ๊ฒฝ์ ์ต๋ํ ์ ํ์ฉํ๊ณ ์ถ์์ต๋๋ค. ์ฌ์ฉ์ ๊ฒฝํ์ ์ต์ ํํ๋ ๊ฑด ๋ฌผ๋ก ์๋ฒ ํ๊ฒฝ๋ ์ต์ ํํ๊ณ ....!!!
๊ทธ๋์ ์ด๋ป๊ฒ ํ ๊ฑด๋ฐ?
์ค์๊ฐ ์ ๋ณด ๋ด๋น ์๋ฒ -> ๋จ์ผ ์๋ฒ ํ๊ฒฝ
์ค์๊ฐ ์ ๋ณด ์ธ ๋ด๋น ์๋ฒ -> ๋ถ์ฐ ์๋ฒ ํ๊ฒฝ (pod ์์ฑ๋๋๋ก)
์ .. ์๋ฒ๋ฅผ ๋ถ๋ฆฌํ๋ฉด ํ์ฌ ๋ก์ง์์ ์์ ํด์ผ๋ ๋ถ๋ถ์ด ๋ช ๊ฐ์ง ์์ต๋๋ค.
1. ์น์์ผ ์ธ์ ๊ด๋ฆฌ
ํญ์ ๋์ผํ ์๋ฒ๋ก ์ฐ๊ฒฐ๋๋ค๋ ๋ณด์ฅ์ด ์ ๋์ด์์ฃ ? ๋ฌผ๋ก ๋ก๋๋ฐธ๋ฐ์ฑ์ผ๋ก ํ ์๋ฒ์ ๊ณ ์ ์ ์ผ๋ก ์ฐ๊ฒฐ๋๊ฒ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค .. ๊ทธ๋ ์ง๋ง, ํ์ฌ ์ ์ ์๋ฒ์์๋ redis๋ฅผ ์ฌ์ฉํ๊ณ ์๊ธฐ์, redis ์ฌ์ฉํด์ ์น์์ผ ์ธ์ id๋ฅผ ๋ชจ๋ ์๋ฒ์์ ๊ณต์ ํ ์ ์๊ฒ๋ ์ฒ๋ฆฌํ๊ณ ์ ํฉ๋๋ค.
2. ์๋ฒ ๋ถ๋ฆฌ
์์ ๊ธฐ์ฌ๋ ๋๋ก ์๋ฒ๋ฅผ ๋ถ๋ฆฌํ๋ คํฉ๋๋ค.
์ค์๊ฐ ์ ๋ณด ๋ด๋น ์๋ฒ๋ ๋จ์ผ์๋ฒ๋ก ํ์ ํฉ๋๋ค. ์๋? ์ด์ฐจํผ ํ๊ตญํฌ์์ฆ๊ถ๊ณผ websocket ํต์ ์ ํด์ ์ํ๋ ์ข ๋ชฉ์ ์ฃผ๊ฐ์ ๋ณด๋ฅผ ์ค์๊ฐ์ผ๋ก ๊ณ์ ๊ฐ์ ธ์ค๊ฒ ๋๋๋ฐ, ์ด๊ฑฐ๋ ํธ๋ํฝ ์ฆ๊ฐ์ ๋ฌด๊ดํ๊ฒ ๊ทธ๋ฅ ๋์ผํ ์ ๋ณด ์ ๊ณตํด์ฃผ๋ฉด ๋๋ ๋ถ๋ถ์ด๊ธฐ ๋๋ฌธ์, '์ฃผ๊ฐ์ ๋ณด'๋ง ๋ค๊ณ ์์ผ๋ฉด ๋ฉ๋๋ค.
์ค์๊ฐ ์ ๋ณด ์ธ ๋ด๋น ์๋ฒ๋ ํธ๋ํฝ์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ pod์ด ์์ฑ๋๋๋กํฉ๋๋ค. ์ค์๊ฐ ์ ๋ณด ๋ด๋น ์๋ฒ์์ ๋ฐ์ ๋ฐ์ดํฐ๋ค์ ๋ฉ์์งํ๋ก publishํ ํ ๋ฐ์. (์ด ๋ถ๋ถ์ ์๋์ชฝ์, ๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ๊ธ์์ ๋ ์์ธํ)
๊ทธ๋ ๊ฒ๋๋ฉด ํด๋น ๋ฉ์์ง๋ฅผ ๊ตฌ๋ ํด์ ์๋น์ค ์ฌ์ฉ์๋ค์๊ฒ ์ ๊ณตํ๋ฉด ๋๋ต๋๋ค ใ ใ ใ
3. Redis Stream ๋์ ์ผ๋ก ์ผ์ ๋ถ๋ถ ๊ณ ๋ฏผ ํด๊ฒฐ-!
๋ฌผ๋ก ? ์์ง ์ง์ ์์ ํด๋ณด์ง ์์์ง๋ง, ์ค์ ์ด์์ค์ธ ์๋น์ค์์ ๊ณ ๋ฏผํ๋ ๋ถ๋ถ์ด๋ ๋์ ์ ๊ฒฐ์ ํ๊ฒ๋ ๋ฐฐ๊ฒฝ์ด ๋น์ทํ๋๋ผ๊ตฌ์. ๊ทธ๋ฆฌ๊ณ ๊ณ ๋ฏผํ๋ ๋ถ๋ถ์ ์ต๋ํ ํด๊ฒฐํ ์ ์์ ๊ฒ ๊ฐ์์ต๋๋ค.
๊ธฐ์กด Redis pub/sub๋ฅผ ์ ์ฉํ๋ค๋ฉด, ํน์ฑ์ ๊ตฌ๋ ์๊ฐ ์์ผ๋ฉด ๋ฉ์์ง๋ฅผ Publishํด๋ ๋ฐ๋ก ํ๋ฐ๋๋ .. ์น๋ช ์ ์ธ ๋จ์ ์ด ์กด์ฌํ๋๋ฐ, ๊ทธ๋ฐ ๋ถ๋ถ์ ๊ณ ๋ คํ์ง ์์๋ ๋์๊ณ , ๋ฌด์๋ณด๋ค ์ด๋ฏธ redis๋ฅผ ์ฌ์ฉํ๊ณ ์๋ ์ํฉ์ด์๊ธฐ์ ์ ํฉํ๋ค ์๊ฐํ์ต๋๋ค.
์ด์ ์ Kafka message queue๋ฅผ ์ฌ์ฉํ์๋๋ฐ, ์ด์ ๋๊ฒ ์ ์ฌํ๋ค ๋๊ผ์ต๋๋ค.
๋ฌผ๋ก redis๊ฐ in-memory db๋ผ ์ฃฝ์์ ๊ฒฝ์ฐ (๋ฐ์ดํฐ ํ๋ฐ ......๊น๋น) fail overํ๋ ๊ณผ์ .. ๊ทธ๋ฐ๊ฒ๋ค๋ ๊ณ ๋ฏผํ ๊ฒ ๋ง์๋ฐ ์คํ๋ ค ์ข์
๋๋ฌด ์ฐ๋นํํ ์ ๋จธ๋ฆฟ์์ ์๋ ๊ฑฐ ๋ง๊ตฌ๋ง๊ตฌ ๋์ง์ด ๋ด์ ๋์์์ด ์ ์๋๋ฐ ... ๊ทธ๋ฅ ํ ์ฌ๋์ ํ๊ณ ๊ธ์ด์ ๊ณ ๋ฏผ์ด ๊ฐ๋ ๋ด๊ธด ๊ธ์ด์์ต๋๋ค.. !!!!
์ฐธ๊ณ
Redis Stream ์ ์ฉ๊ธฐ
์๋ ํ์ธ์ Data Product ํ ๋ฐ์์ฐ์ ๋๋ค. ์ด๋ฒ์ ์ ๊ฐ ์๊ฐํด๋๋ฆด ๋ด์ฉ์ ํ ๋ด session Info data ์ ์ฌ ๋ฐ API ์๋น์ค ๊ตฌ์ถ์ ์ ์ฉํ Redis Stream์ ๋ํ ์ด์ผ๊ธฐ์ ๋๋ค. ์ ํฌ ํ์์๋ User์ ํ๋ ์ ๋ณด๋ฅผ
dev.gmarket.com
https://oliveyoung.tech/2024-11-15/inventory-changed-stocks-function-with-redis-stream/
์ฌ๊ณ ์ ๋ณ๋์ ์๊ณ์ด ๋ฐ์ดํฐ๋ก?! | ์ฌ๋ฆฌ๋ธ์ ํ ํฌ๋ธ๋ก๊ทธ
Redis Stream์ผ๋ก ์ฌ๊ณ ๋ณ๋ ์ด๋ ฅ ๊ตฌํํ๊ธฐ
oliveyoung.tech
'๊ฐ๋ฐ๊ด๋ จ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๊ฐ๋ฐ์ผ์ง] SSAFY ํนํ ํ๋ก์ ํธ - 3์ฃผ์ฐจ(2024.09.07 - 2024.09.14) (7) | 2024.09.08 |
---|---|
[ํ๊ณ ] SSAFY ๊ณตํต ํ๋ก์ ํธ - Street Coding Fighter (15) | 2024.08.31 |
Message Broker - Kafka์ RabbitMQ (37) | 2024.07.30 |