SNS + SQS: Fan Out
- ์ฌ๋ฌ SQS Queue์ Message๋ฅผ ์ ์กํ๋ ค ํ ๋ ๋ชจ๋ SQS ๋๊ธฐ์ด์ ๋ฉ์์ง๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ๋ณด๋ด๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
- ์๋ฅผ ๋ค์ด ์ฑ์ด ์ค๋์ ๊ฐ์๊ธฐ ์ข ๋ฃ๋๊ฑฐ๋, ์ ์ก์ด ์คํจํ๊ฑฐ๋ ๋๋ ๋์ค์ SQS Queue๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
- ์์ ๊ฐ์ ์ํฉ์ผ ๋ ํฌ์์ ํจํด์ ์ฌ์ฉํ๋ฉด SNS Topic์ ํ ๋ฒ๋ง pushํด๋ ์ํ๋ ๋งํผ์ SNS Topic์ ์ฌ๋ฌ SQS ๋๊ธฐ์ด์ ๊ตฌ๋ ํ ์ ์์ต๋๋ค.
- ์ด๋ Queue๋๊ธฐ์ด์ ๊ตฌ๋
์(Subscriber)๊ฐ ๋๋ฉฐ, ๊ทธ๋ค ๋ชจ๋ SNS์ ์ ์ก๋ ๋ฉ์์ง๋ฅผ ๋ฐ๊ฒ ๋ฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, ๊ตฌ๋งค ์๋น์ค์์ 2๊ฐ์ SQS ๋๊ธฐ์ด๋ก ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ๋, ํ๋์ SNS Topic์ ํ๋ฒ๋ง ๋ฉ์์ง๋ฅผ ์ ์กํ๋ฉด SNS Topic์ ๊ตฌ๋ ์์ธ ๋๊ธฐ์ด์์ ์ฐ๊ฒฐ๋ ์ฌ๊ธฐ์๋น์ค์ ์ด์ก์๋น์ค๋ก ๋ฉ์์ง๋ฅผ ์ ๋ฌํ ์ ์์ต๋๋ค.
- ํฌ์์์ ์์ ํ ๋ถ๋ฆฌ๋ ๋ชจ๋ธ์ด๋ฏ๋ก ๋ฐ์ดํฐ ์์ค์ด ๋ฐ์ํ์ง ์๋๋ค.
- SQS๋ฅผ ํตํด ๋ฐ์ดํฐ ์ง์์ฑ, ์ง์ฐ์ฒ๋ฆฌ ์์ ์ฌ์๋๊ฐ ๊ฐ๋ฅ
- ํฌ์์ํจํด์ผ๋ก ๋ ๋ง์ SQS๋๊ธฐ์ด์ SNS Topic์ ๊ตฌ๋ ์ํฌ ์ ์๋ค.
- ์ด๋ฅผ ์ํด์๋ SQS ๋๊ธฐ์ด ์ก์ธ์ค ์ ์ฑ ์ ํตํด SNS Topic์ด SQS๋๊ธฐ์ด์ ๋ฉ์์ง๋ฅผ ์ ์กํ๋๋ก ํ์ฉํด์ผ ํ๋ค.
S3 Events to multiple queues
S3 ์ด๋ฒคํธ๋ฅผ ์ฌ๋ฌ ๋๊ธฐ์ด๋ก ๋ณด๋ด๊ณ ์ถ์ ๋
- S3 ์ด๋ฒคํธ ๊ท์น์๋ ์ ์ฝ์กฐ๊ฑด์ด ์๋๋ฐ, ๊ฐ์ ์ด๋ฒคํธ ์ ํ
- ์๋ฅผ๋ค๋ฉด, ๊ฐ์ฒด ์์ฑ๊ณผ ๊ฐ์ ์ด๋ฒคํธ ์ ํ์ด๋ images/ ๋ฑ ๊ฐ์ ์ ๋์ด์ ์กฐํฉ์์๋ ํ๋์ S3 ์ด๋ฒคํธ ๊ท์น๋ง์ ์ ์ฉํ ์ ์๋ค.
- ์ฌ๋ฌ SQS ๋๊ธฐ์ด๋ก ๋์ผํ S3 ์ด๋ฒคํธ ์๋ฆผ์ ๋ณด๋ด๊ธฐ ์ํด์๋ ํฌ์์ ํจํด์ ์ฌ์ฉํ๋ฉด ๋๋ค.
- S3 ๋ฒํท์ ์ด๋ฒคํธ์ธ S3๊ฐ์ฒด๊ฐ ์๋ค๊ณ ๊ฐ์ ํ๊ณ ์ด ์ด๋ฒคํธ๋ฅผ SNS Topic์ผ๋ก ์ ์กํ๊ธฐ ์ํด, ์ฌ๋ฌ Queue๋ฅผ SNS Topic์ ๊ตฌ๋ ์ํค๋ฉด ๋๋ค.
- ์ฑ, ์ด๋ฉ์ผ, ๋๋ค ํจ์ ๋ฑ๋ SNS Topic์ ๊ตฌ๋ ์ํฌ ์ ์๋ค.
- ํฌ์์ ํจํด์ ์ฌ์ฉํด์ S3์์ ๋ฐ์ํ ์ด๋ฒคํธ๋ฅผ ์ฌ๋ฌ ๋ชฉ์ ์ง๋ก ๋ณด๋ผ ์ ์๋ค.
SNS to S3 through Kinesis Data Firehose
๋ฐ์ดํฐ ์ ์ก์ ์ํ ๋๋ค๋ฅธ ์ํคํ ์ฒ๋ก
Kinesis Data Firehose (KDF) ๋ฅผ ํตํด SNS ๋ฅผ Amazon S3 ๋ก ๋ณด๋ด๋ ๋ฐฉ์
- SNS ๋ KDF์ ํตํฉ๋์ด ์์ด ๊ตฌ๋งค ์๋น์ค์์ SNS Topic์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ฉด KDF์์ ๊ทธ ์ ๋ณด๋ฅผ ์์ ํ๊ณ ,
KDF์์๋ ๋ฐ์ดํฐ๋ฅผ ๋ค์ S3๋ฒํท์ผ๋ก ์ ์กํ๊ฑฐ๋ KDF์์ ์ง์ํ๋ ๋ค๋ฅธ ๋ชฉ์ ์ง๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ก - ๋ ๋์ ๋ฒ์๊น์ง ๋ฉ์์ง๋ฅผ ์ง์ํ๊ณ SNS Topi์ผ๋ก ์ ์กํ ์ ์๊ฒ ๋๋ค.
- ํฌ์์ํจํด์ FIFO Topic์๋ ์ ์ฉ๊ฐ๋ฅํ๋ค.
- SNS์๋ FIFO, ์ฆ ์ ์
์ ์ถ ๊ธฐ๋ฅ์ด ์์ด Topic ๋ด์ ๋ฉ์์ง์ ์์๋ฅผ ์ง์ ํ์ฌ ์์ฐ์๊ฐ 1, 2, 3, 4 ์์๋ก ๋ฉ์์ง๋ฅผ ์ ์ก
- ์ด๋ ๊ตฌ๋ ์ SQS FIFO Queue๋ง ํ ์ ์๊ณ , ์์๋๋ก 1, 2, 3, 4 ๋ผ๋ ๋ฉ์์ง๋ฅผ ์์ ํ๊ฒ ๋๋ค.
๋๊ธ๋จ๊ธฐ๊ธฐ