์ฒ์์๋ ๋ฐฐ์น๋ก ์์
-> ์ด ๊ฒฝ์ฐ ์ฒ๋ฆฌํ ์ ์๋ ๋ฐ์ดํฐ์ ์์ด ์ค์ํ๋ค.
์๋น์ค๊ฐ ๊ณ ๋ํ๋๋ฉด ์ ์ ๋ ์ค์๊ฐ ์ฒ๋ฆฌ ์๊ตฌ๊ฐ ์๊ธฐ๊ธฐ ์์ํ๋ค.








์ ์ฒด์ ์ผ๋ก ์์คํ ์ด ๋ณต์กํด์ง๋ค.
๋ฐฐ์น ์์คํ ์ ์ฃผ๊ธฐ์ ์ผ๋ก ๋์ํ๋ฉฐ ๋ณดํต์ ์ค์ ์ฌ์ฉ์์๊ฒ ๋ฐ๋ก ๋ ธ์ถ๋๋ ์ผ์ ํ์ง ์๋๋ค.
์ค์๊ฐ ์ฒ๋ฆฌ์ ๊ฒฝ์ฐ์๋ ์ค์ ์ฌ์ฉ์์ ๊ด๋ จ๋ ์ผ์ ์ฌ์ฉ๋ ํ๋ฅ ์ด ๋ ๋๊ธฐ์ ์์คํ ์ฅ์ ๋์์ด ์ค์ํด์ง๋ค.
์ด์ ๋น์ฉ ์ฆ๊ฐ
-> ๋ฐฐ์น ์ฒ๋ฆฌ๋ ์๋ชป ๋์ด๋ ๋ฐ์ดํฐ ์ ์ค ์ด์๊ฐ ์ ์ง๋ง ์ค์๊ฐ ์ฒ๋ฆฌ๋ ๋ฐ์ดํฐ ์ ์ค์ ๊ฐ๋ฅ์ฑ์ด ์ปค์ง๊ธฐ์ ํญ์ ๋ฐ์ดํฐ ๋ฐฑ์
์ ์ ๊ฒฝ์ ์จ์ผํ๋ค.
Point to Point
-> Many to Many ์ฐ๊ฒฐ์ด ํ์ํ๋ค.
Messaging Queue
-> ์ค๊ฐ์ ๋ฐ์ดํฐ ์ ์ฅ์๋ฅผ ๋๊ณ ์์ฐ์์ ์๋น์๊ฐ decouple๋ ์ํ๋ก ์์
ํ๋ค.


์์ ๋ฐ์ดํฐ ์ ์ฅ ๋ชจ๋ธ๊ณผ ํ์ฉ ์ฌ๋ก์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ชจ๋ธ๋ ๊ฒฐ์ ๋๋ค.
Point to Point
Messaging Queue
๋ณดํต micro-batch๋ผ๋ ํํ๋ก ์์ฃผ ์งง์ ์ฃผ๊ธฐ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ ์ฒ๋ฆฌํ๋ค.
-> Spark Streaming์ด ๋ํ์ ์ด๋ค.
๋ค์์ Consumer๋ฅผ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ค๋ ์ฅ์ ์ด ์กด์ฌํ๋ค.
Point to Point ๋ณด๋ค๋ ์ด์์ด ์ฉ์ดํ๋ค.
์คํธ๋ฆฌ๋ฐ ์์คํ
์์ ๋ฐ์ดํฐ๋ ์ผ๋ฐ์ ์ผ๋ก ์ผ์ ํ ์๋๋ก ์์ฑํ๋ค.(Producer)
-> ๊ฐ๋์ ๋ฐ์ดํฐ ์์ฑ์ด ํญ๋ฐ์ ์ผ๋ก ๋์ด๋ ์ ์๋ค.
๋ค์ด ์คํธ๋ฆผ ๋จ๊ณ(Consumer)์์ ์ ์์ ์ฒ๋ฆฌ๋์ด์ผ ํ๋ค.
-> ๋ค์ด์ค๋ ๋ฐ์ดํฐ ์๋๋ฅผ ๋ฐ๋ผ์ก์ง ๋ชปํ๋ฉด ์์คํ
์ ๋ฐ์ดํฐ๊ฐ ์์ฌ ์ง์ฐ๋๋ฉด์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ ์ฆ๊ฐ ๋ฑ์ผ๋ก ์ ์ฌ์ ์ธ ์์คํ
์ฅ์ ๋ฅผ ์ด๋ํ ์ ์๋ค.
-> ์ด๋ฅผ Backpressure Issue๋ผ๊ณ ๋ถ๋ฅธ๋ค.
Backpressure๋ฅผ ์ค์ด๋ ๋ฐฉ๋ฒ ์ค์ ํ๋๋ ์ค๊ฐ์ ๋ฉ์ธ์ง ํ๋ฅผ ๋์
ํ๋ ๊ฒ์ด๋ค.
-> Backpressure๋ฌธ์ ๋ฅผ ๋ง์ด ํด๊ฒฐํ ์ ์์ง๋ง ์์ ํ ํด๊ฒฐ์ ๋ถ๊ฐ๋ฅํ๋ค.
Point to Point ์์คํ
์ ๊ฒฝ์ฐ์๋ Comsumer/Subscriber์ชฝ์ ์์ ๋ฒํผ๊ฐ ์กด์ฌํ๋ค.
-> ํ์ง๋ง ๋ฒํผ์ ํฌ๊ธฐ๊ฐ ๊ณง ๋ถ์กฑํด์ง๋ค -> Overflow