Gallery
Search
Q. ํ ์ฃผ๊ฐ ์นดํ์นด์ ๋ํด์ ์๋์ ๊ฐ์ด ํ๊ตฌํ๊ณ ํ๋ก์ ํธ์ ์ ์ฉํด ๋ณด์์ต๋๋ค.
์ด๋ฌํ ๋ฐฉ๋ฒ์ด ์ฌ๋ฐ๋ฅธ ์ ๊ทผ์ธ์ง ํผ๋๋ฐฑ์ ๋ฐ๊ณ ์ถ์ต๋๋ค.
[Spring][258] ์น ์๋น์ค ์นดํ์นด ์ ์ฉ ์ฃผ๊ฐ ์ ๋ฆฌ
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์ ๊ทผ O, ๋ ์ฌ๋์๊ฒ ๋ค๋ฃฐ ํ์ O
Q. ์ํคํ
์ฒ ๊ตฌ์ฑ๊ณผ ๊ด๋ จ๋ ์ง๋ฌธ ๋ฉ์ธ์๋ฒ์ ํธ๋ํฝ์๋ฒ์ ๊ตฌ๋ถ ์ด ๋ฐฉ์์ ๋ํ ์๊ฒฌ?
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์ํคํ
์ฒ์ ๊ตฌ์ฑ
๋ฉ์ธ,ํธ๋ํฝ ์๋ฒ๋ฅผ ๋๋๋๊ฒ๋ณด๋ค๋ ๋๋ฉ์ธ์ ๊ธฐ์ค์ผ๋ก ๋๋๋๊ฒ์ด ํ์ฅ, ์ ์ง๋ณด์์ ์ผ๋ก ์ ๋ฆฌ ํ ์ ์๋ค. โ ์ถํ ๋ฉ์ธ๊ณผ ํธ๋ํฝ์๋ฒ์ ๋ชจํธํจ์ด ๋ฐ์ํ๊ฒ ๋๋ฏ๋ก
โ ๋ง์ดํฌ๋ก ์ํคํ
์ฒ์ ๋ฐฉํฅ์ผ๋ก ํ๋ ค๋ฉด ๋๋ฉ์ธ, ๋ฐ์ดํฐ๋ฅผ ์ฐ์ ๊ธฐ์ค์ผ๋ก ์๋ฒ๋ฅผ ๋
๋ฆฝํ ์ํค๋ ๋ฐฉํฅ์ด ์ข๋ค. โ Consumer group์ ๊ฐ๊ฐ โ Topic์ 1๊ฐ๋ก ์ฐ๊ฒฐ
Q. Elasticsearch์ ๋์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ธฐ ์ํด์ Logstash๋ฅผ ์ค์นํ์ฌ ์ค์ ํ์ผ์ ํตํด MySQL DB์ ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํด๋ณด๊ณ ์์ต๋๋ค.
์ฐ์ ์ด๋ฌํ ๋ฐฉ๋ฒ์ด ์ฌ๋ฐ๋ฅธ ์ ๊ทผ ๋ฐฉ๋ฒ์ธ์ง ์๊ณ ์ถ์ต๋๋ค.
๋๋ ๋ฐ์ดํฐ๋ ์๋์ฒ๋ผ ๋๋์ด์ ๋ก๋ํ๋๊ฒ ๋ง๋์ง? ์๋๋ฉด JVM์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฆ๊ฐ์ํค๋์ง?
์ฒ์์ ๋ณ๋์ ์ค์ ์์ด 710๋ง๊ฑด์ ๋์๋ฅผ ํ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ฆฌ๊ณ ์ ๋ฌํ๋ ์ค์ ์ ํ๊ณ JVM Heap์ OutOfMemory ๋ฌธ์ ๊ฐ ๋ํ๋ฌ์ต๋๋ค.
๋ฐ๋ผ์ jdbc_paging_enabled ์ต์
์ ์ถ๊ฐํ์ฌ 50000๊ฑด์ฉ ๋ก๋ํ๋ ๊ณผ์ ์ผ๋ก ๋๋๋ ๋ฉ๋ชจ๋ฆฌ ๋ฌธ์ ๋ ๋ํ๋์ง ์์์ต๋๋ค.
์ค์ ํ์ผ์ ์ฃผ๊ธฐ์ ๋ํ ์ดํด๋ ๋ถ์กฑ)
ํ์ง๋ง 710๋ง๊ฑด์ ๋ค ๋ก๋ํ๋๋ฐ ๋ค์ 0๋ถํฐ ๋ก๋ํ๊ณ ์์ต๋๋ค.
โ ์๊ฐ ๋ฐ์ดํฐ ์นดํ
๊ณ ๋ฆฌ๋ก ํ
์คํธํด๋ณด๋ ๊ณ์ ๋ก๋ํ๋๊ฒ์ด ๋์ผํ๊ฒ ๋ํ๋ฌ๊ณ , ๋ฌด์์ธ์ง ์๊ฐํด๋ณด๋ ์ค์ ํ์ผ์ schedule => "* * * * *" # Query์ฃผ๊ธฐ ์ค์ ์ ๋ฐ๋ฅธ๊ฒ์ด๊ณ ,
๊ณ์ํด์ ๊ทธ๋์ ๋งค ๋ถ๋ง๋ค SELECT * FROM book_category ์ฟผ๋ฆฌ๋ฅผ ์คํํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ Elasticsearch๋ก ์ ์กํ๊ณ ์๋ ๊ฒ์ธ๊ฒ ๊ฐ์ต๋๋ค. Logstash๊ฐ ๊ณ์ํด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ณ Elasticsearch์ ์ ์กํ๋ ๋์์ ์ํํ๋๊ฒ์ผ๋ก ์ ๋ฆฌ.
๊ทธ๋ผ ๊ณ์ ๋์๋ 50000๊ฑด์ฉ 710๋ง์ ๋ชจ๋ ๋๋ฉด ๊ณ์ํด์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํ ๋์์ธ๊ฒ์ด๊ณ , ์ดํด๊ฐ ๋ฉ๋๋ค.
๊ทธ๋ผ ์ฃผ๊ธฐ๊ฐ ๊ธธ๋ฉด ์ด๋ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋์ง ์๊ณ ์ถ์ต๋๋ค. ๊ทธ ์ฌ์ด ์
๋ฐ์ดํธ, ์ญ์ ๋ฑ ์์ด์ง ๋ฐ์ดํฐ๊ฐ ์์ผ๋ฉด ์์ง ๋ก๋๋์ง ์์ ์ํ์์ ๊ฒ์์ ์ค๋ฅ๊ฐ ๋ํ๋ ์ง ๋ฑ..
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์๋ฒ๋ฅผ ์ฒ์ ๋์ธ๋ select * fromโฆ ์ด ๋ง์ ์ ์์ด๋
์๋ฒ๊ฐ ์ ์ง๋๋ ์ํฉ์์๋ update์ ๋ํ ๊ฒ๋ง ๋ถ๋ฌ์ฌ์ ์๋๊ฒ์ ํ์ธํด๋ณด๊ธฐ.
์ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด๋๊ณ ,
๋ณํ๋ ๋ฐ์ดํฐ๋ง ๋ฃ๋๊ฒ์ผ๋ก ๊ตฌ์ถํด์ผ ํ ๊ฒ ๊ฐ๋ค.
Q. Elasticsearch๋ฅผ ๊ตฌ์ฑํ๋ค๋ฉด ์ํคํ
์ณ๊ฐ ๋ณดํต ์ด๋ค๋ฐฉ์์ผ๋ก ๊ตฌ์ฑ๋๋์ง ๊ถ๊ธํ์์ต๋๋ค.
EC2 ๋ก์ปฌ์ ์ค์นํ๋๊ฒ์ผ๋ก ์๊ฐํ์๋๋ฐ ๊ทธ๋ผ RDS์ MySQL์ ์คํํ๋๊ฒ ์ฒ๋ผ Elasticsearch๋ง์ ๋ณ๋์ ์๋ฒ๋ฅผ ๊ตฌ์ฑํ๊ณ ์ธ๋ถ์ ์ํ๋ฏ์ด ์ ๊ทผํด์ผ ํ๋๊ฒ์ผ๋ก ์๋ชป ํ์
ํ์์ต๋๋ค.
์๋น์ค ์ ๋ก๋๋ฐธ๋ฐ์๋ก ์ธํด ๊ฒ์ ์์ฒญ์ด Elasticsearch๊ฐ ์ค์น๋์ง ์์ ์๋ฒ์ชฝ์ผ๋ก ์์ฒญ์ด ๊ฐ๋ค๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ๊ฒ ๊ฐ๊ณ , ๋๊ฐ์ Elasticsearch๋ฅผ ์ค์นํด๋๋ค๋ฉด ๊ทธ ๋๊ฐ๋ ๊ฐ๊ฐ ๋ณ๋์ ์๋ฒ๊ธฐ ๋๋ฌธ์ ์ผ๊ด์ฑ์ ์ด๋ป๊ฒ ์ ์งํ ์ง ๊ถ๊ธํ์์ต๋๋ค.
์ข๋ ์ฐพ์๋ณด๋ Elasticsearch ์์ฒด๊ฐ ์ค์นํ๋ฉด์ ๋
ธ๋๋ก ๊ตฌ๋ถ๋๊ณ ๋
ธ๋๋ค๋ผ๋ฆฌ ์ฐ๊ฒฐ๋ ์งํฉ๋ค์ ํด๋ฌ์คํฐ๋ผ๋ ๋จ์๋ก ์๋ก ์ฐ๊ฒฐ๋๋๊ฒ์ผ๋ก ๋ณด์ฌ์ง๋๋ค.
๋ฐ๋ผ์ Elasticsearch ๋
ธ๋(์๋ฒ)๊ฐ ํด๋ฌ์คํฐ(์งํฉ)์ ๊ตฌ์ฑํ๋ฉด ๊ทธ ์์์๋ ์๋์ ์ผ๋ก ๋ถ์ฐํ๊ณ ๊ณต์ ํ๋๊ฒ ์ฒ๋ผ ๋๊ปด์ง๋๋ฐ ๋ง๊ฒ ์ดํดํ๊ณ ์๋๊ฒ์ธ์ง ๊ถ๊ธํฉ๋๋ค.
๋
ธ๋๋?
ํด๋ฌ์คํฐ๋??
๊ฒฐ๋ก ์ ์ผ๋ก Elasticsearch ์ํคํ
์ฒ์ ํน์ง
๋
ธ๋์ถ๊ฐํ๊ธฐ
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
Q. Elasticsearch ๊ด๋ จ๋ ์ธ๋ถ ์ฃผ์ ๋ฅผ ๋๋์ด๋ณด์์ต๋๋ค. ๊ฒ์๊ฐ์ ํ์ ๋ถ๋ดํด์ ํ๋์ฉ ํด๋ฆฌ์ดํด๋๊ฐ๋ คํฉ๋๋ค. ์ฐ์ ์์๊ฐ ๋์ ์ฃผ์ ๋ถํฐ ํด๋๊ฐ๊ณ ๋ถ์กฑํ ๊ฒ๋ค์ ํ๋ก์ ํธ ์ดํ์๋ ์งํํด๋๊ฐ๋ ค ํฉ๋๋ค.
MySQL๊ณผ Elasticsearch์ ๋น๊ต๊ฐ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ๋ณด์ฌ์ฃผ๊ณ ์ธ๋ถ ์ฃผ์ ๋ก ๋ค๋ฃจ๋ฉด ์ข์
โข
Full Text Index vs Elasticsearch ๋น๊ต ์ฌํ
โข
Elasticsearch์ ๊ธฐ๋ณธ์ ๋ํ ์ฑ๋ฅ์ฐจ์ด MySQL์ ๋ํ๊ฒ
โฆ
โ๊ฒ์์ด ๊ธฐ๋ฐโ
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
โ Elasticsearch์ ๋น๊ตํ๊ธฐ ์ํด์๋ Full Text ์ธ๋ฑ์ฑ์ ๋ํ MySQL ์์์ ํ
์คํธ๊ฐ ํ์ํ๋ค. โ Ela VS Full Text ์ ์ฐจ์ด๋ฅผ ๋น๊ตํ๋๊ฒ์ด ํต์ฌ
ํ์ด์ง์์ ๊ฐ์ฅ ์๋์ ๋ฌธ์ ๊ฐ ์์๋ ๋์ ์ ์ฒด count ๋ถ๋ถ์ ์บ์ฑ์ ํ์ฉํ๊ณ ์ ํ์
1.
์นด์ดํธ ์ฟผ๋ฆฌ ์์ฒด๋ฅผ ์บ์ฑํ๋๊ฒ๋ ์๋ฏธ๊ฐ ์๋ค.
2.
์ฒซํ์ด์ง๋, ํน์ ํค์๋์ ์ฒซํ์ด์ง, ๋๋ ๊ทธ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์บ์ฑํด๋๋ฉด ์ข๋ค.
3.
์๋น์ค์์ ์ ๋ํ๊ฒฝ์ฐ( ex ์นดํ
๊ณ ๋ฆฌ ์ฒ๋ผ, ์ ํด์ง๊ฒ ๊ฒฐ๊ณผ๊ฐ ๊ฐ์๊ฒ์ ์บ์ฑํ๋ฉด ์ข๋ค)
4.
์ฌ์ฉ ์ฃผ๊ธฐ์ ๋ฐ์ดํฐ ์
๋ฐ์ดํธ ์ฃผ๊ธฐ๋ฅผ ์๋ก ๊ณ ๋ คํด์ ์ค๊ณํด์ผ ํ๋ค.
[Spring][258] [4์ฃผ์ฐจ ๋ฉํ ๋ง] ์ง๋ฌธ๋ด์ฉ ์ ๋ฆฌ์ ๋ต๋ณ
Q. ๋ฌธ์ ์ด๋ฒ์ฃผ๋ถํฐ ์ฑ๋ฅ ๊ฐ์ ์ ๋ํ ์งํ ๋ฐฉ๋ฒ๊ณผ ์ง์งํ๊ฒ ๊ณ ๋ฏผํด๋ณด๊ณ ์์ต๋๋ค. ๋ฌธ์ ํด๊ฒฐํ๋ ๊ณผ์ ์ ์๋์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์คํ ๋ฆฌ๋ฅผ ์ ๋ฆฌํด๋๊ฐ๋ฉด ๋ ๊น์?
๋ฌธ์ ์ํฉ โ ํด๊ฒฐ๋ฐฉ์ โ ์๊ฒฌ์กฐ์จ โ ์๊ฒฌ๊ฒฐ์ โ ๋น๊ต ๊ฒฐ๊ณผ๋ค ์์ง๊ณผ ์ ๋ฆฌ..
๋ฌธ์ ์ํฉ)
๊ธฐํ ๋น์ ๊ฒ์ ๊ธฐ๋ฅ๊ณผ ํ์ด์ง ๊ธฐ๋ฅ ๊ฐ์ ์ด ๊ฐ์ฅ ์ค์ํ ํ ํฝ์ด ๋ ๊ฒ์ผ๋ก ์์ธกํ์์ต๋๋ค.
ํ์ฌ MVP ๊ตฌํ ๋จ๊ณ์์๋ ์ค์ ์ด์๋๊ณ ์๋ ์๋น์ค๋ค๊ณผ ๋น๊ตํ์๋ ์ฌ์ฉ์๊ฐ ๋ถํธํจ์ ๋๋ ์ ์์ ์์ค์ผ๋ก ์ฑ๋ฅ์ ์ด์์ด ์์์ ๋๋ผ๊ณ ์์ต๋๋ค.
(์ข ๋ ๊ตฌ์ฒด์ ์ด์ฌ์ผ ํ๋์ง?)
ํด๊ฒฐ๋ฐฉ์)
๊ธฐ๋ณธ์ ์ผ๋ก ์ ํฌ๊ฐ ํ ์ ์๋ ๋ฐฉ์ ํ์์ ๊ตฌ๊ธ๋ง, ํ ํ๋ก์ ํธ ๋ ํผ๋ฐ์ค ์ฒดํฌ ์ ๋๊ฐ ๋ง๋์ง.
์ ํฌ๊ฐ ํ๊ณ ์๋ ์์ค์ ๊ตฌ๊ธ๋ง, ChatGPT๋ฅผ ํตํ ํค์๋๋ฅผ ์ต๋ํ ํ์ํ๊ณ ์ ์ฉํ ์ ์๋ ๊ธฐ์ ์คํ์ด๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ด๋ค๊ฒ์ด ์๋์ง ์ฐพ๊ณ ์์ต๋๋ค.
์๊ฒฌ์กฐ์จ)
ํ์ ์ผ๋ก ํ์๋ฅผ ํตํด์ ์ ๋ด์ฉ์ ๋ํด์ ๊ณต์ ํ๋ฉด์ ์ ์ ํ ๊ธฐ์ ์คํ์ธ์ง๋ฅผ ํ๋จํด๋ด
๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฒฝํ์๊ฐ ์๊ธฐ๋๋ฌธ์ ์ฌ์ค ์ด ๋ถ๋ถ์ ์ ๋ขฐ๋๊ฐ ๋ถ์กฑํฉ๋๋ค. ๋ ๋ง์ ์๋ฃ๋ฅผ ํ์ํด๋ณด๋ ๊ฒ์ด ํด๋ต์ธ์ง ๊ถ๊ธํฉ๋๋ค.
์๊ฒฌ๊ฒฐ์ )
์ด๋ ํ ๊ฐ์ ์ฌํญ ํ ํฝ ํ๋์ ๋ํด ๋ช๊ฐ์ง ๊ธฐ์ ์คํ์ ์ฌ์ฉํด๋ณด์๋ ์๊ฒฌ์ด ๋ชจ์๋ค๋ฉด,
์๋ก ๊ฒ์๊ธฐ๋ฅ ๊ฐ์ ์์๋ ์๋์ ๊ฐ์ ์๊ฒฌ๋ค์ ๋ชจ์ ์ ์์์ต๋๋ค.
[Spring][258] ๊ฒ์๊ด๋ จ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ์ฑ๋ฅ ๊ฐ์ ๋ฐฉ์ ์์ง
์
๋ฌด ๋ถ๋ด์ ์ด๋ค์์ผ๋ก ํ๋ ๊ฒ์ด ํจ์จ์ ์ด๊ณ ํ์ ์ฒด๊ฐ ์ฑ๋ฅ๊ฐ์ ์ ์ฐธ์ฌํ ๋๋์ ์ค์ง ๊ถ๊ธํฉ๋๋ค.
ํ์์ด ๋ชจ๋ ๊ฐ์ ์ ์ฉํด๋ณด๊ณ ๋น๊ตํด๋ณด๋ ๊ฒ์ ๋ญ๊ฐ ํ์ ์ธ ์์ง์์ด ์๋๊ฒ ๊ฐ์ ๋๋์
๋๋ค. ๋ชจ๋๊ฐ ๋์ผํ๊ฒ์ ํด๋ณด๋ ์ค๋ ฅ์ ์ธ ํฅ์์ ๊ฐ์ฅ ์ข์ ๊ฒ ๊ฐ์ง๋ง ๋ง์น ๊ทธ๋ฅ ๋์ผํ ํ๋ก์ ํธ๋ฅผ ๊ฐ์ธํ๋ก์ ํธ์ฒ๋ผ ์งํํ๋ ๋๋์ผ ๊ฒ ๊ฐ์ต๋๋ค..
์๋๋ฉด ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ์ํด์ ์ ์ฒด ํ ํฝ์ ๋งก์์ ์งํํด๋ณด๋๊ฒ ๋ง๋์ง
์๋๋ฉด ์ ๊ฐ ๊ตฌ๋ถํด ๋ ์ค๊ฐ ํ ํฝ ์ ๋๋ก ๋ถ๋ดํ๋๊ฒ์ด ์ข์์ง
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
ํ์ ์ผ๋ก ํ์๋ฅผ ํตํด์ ์ ๋ด์ฉ์ ๋ํด์ ๊ณต์ ํ๋ฉด์ ์ ์ ํ ๊ธฐ์ ์คํ์ธ์ง๋ฅผ ํ๋จํด๋ด
๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฒฝํ์๊ฐ ์๊ธฐ๋๋ฌธ์ ์ฌ์ค ์ด ๋ถ๋ถ์ ์ ๋ขฐ๋๊ฐ ๋ถ์กฑํฉ๋๋ค. ๋ ๋ง์ ์๋ฃ๋ฅผ ํ์ํด๋ณด๋ ๊ฒ์ด ํด๋ต์ธ์ง ๊ถ๊ธํฉ๋๋ค.
ํ์ฌ์ํฉ์์๋ ๊ต์ฐจ์ฒดํฌ๊ฐ ํ์ค์ ์ด๊ณ ๊ทธ์ค์ ์ ํํ ๋ฐฉ๋ฒ์ผ ๊ฒ์ด๋ฏ๋ก ์ข๋ค.
ํ์ฌ ์ํฉ์์๋ ์ ๋ฐฉ๋ฒ์ ์ ํํด์ผ ํ๊ณ ,
์ถํ์
CS, OS, Network, Data Structure, Algorithm ๋ฑ ์ฌํ ๊ณต๋ถ๋ฅผ ํตํด์ ์์ด๋์ด๋ฅผ ํ๋ ํ ์ ์๋ค.
โ ์ด๋ ค์ด ๋ฌธ์ , ์ํฉ์ ํด๊ฒฐํ ํค๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์, ๊ณ์ํด์ ๊พธ์คํ ๊ณต๋ถํด์ผ ํ๋ค.
๊ทธ ์ค์ ์ฐ์ ์์๋ Data Structure , Algorithm ์ ๊ณต๋ถํด๋ณด๋ฉด ์ด๋ฐ ๋ฌธ์ ํด๊ฒฐ์ ์์ด๋์ด๋ฅผ ์ ๊ณต ํ ์ ์๋ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ์์ ๋๊ฐ ์ ์๋ค. https://www.yes24.com/Product/Goods/122445610 ์ด๊ฒ ๊ฐ์ ์ฑ
๋ค์ ์ฐพ์๋ณด์.
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์
๋ฌด ๋ถ๋ด์ ์ด๋ค์์ผ๋ก ํ๋ ๊ฒ์ด ํจ์จ์ ์ด๊ณ ํ์ ์ฒด๊ฐ ์ฑ๋ฅ๊ฐ์ ์ ์ฐธ์ฌํ ๋๋์ ์ค์ง ๊ถ๊ธํฉ๋๋ค.
ํ์ฌ๋ ๋ถ๋ดํ๋๋ผ๋ ๋ชจ๋ ๊ฒ์ ํผ์ ํ ์๋ ์์ผ๋ฉฐ, ๋ชจ๋ ๊ฒ์ ๊ฐ์ด ํ๋๊ฒ๋ ๋ฌธ์ ๊ฐ ์๋ค.
๊ฒฐ๊ตญ ํํ๋ก์ ํธ๊ธฐ ๋๋ฌธ์ ๋ถ๋ดํด์ผ ํ๋ฉฐ, ํ๋ก์ ํธ๊ฐ ์ข
๋ฃ๋๋๋ผ๋ ๋ค๋ฅธ ํ์์ ์ฝ๋, ๊ธฐ๋ฅ์ ๋ด๊ฐ ์ง์ ๋ค๋ค๋ณด๊ณ ์ฐจ์ด์ ์ ๋๋ผ๊ณ , ๊ทธ ์ ํ๊ณผ์ ์ ์ดํด๋ณผ ํ์๊ฐ ์๋ค.
์ด๋ฌํ ํ๋ก์ ํธ ๋ณต๊ธฐ๋ฅผ ํด๋ณด๋ฉด์ ์ฅ๊ธฐ์ ์ผ๋ก ๋๋ง์ ์ ๋ฆฌ๋ฅผ ํด๋ณด๋ฉด์ ๊ณต๋ถํด์ผ ํ๋ค.
Q. ๋ฌธ์ ํด๊ฒฐ์ ์ํ ๋ง์ ๊ธฐ์ ์ ํด๊ฒฐ ๋ฐฉ์๋ค์ด ์์๋๋ฐ, ๋ธ๋ก๊ทธ๋ ๊ณต์ ๋ฌธ์๋ ๊ฐ ๊ธฐ์ ๋ค์ ์ฅ ๋จ์ ๋ค์ ์ค๋ช
ํด๋ ์๋ฟ์ง ์๋ ๋ถ๋ถ๋ค์ด ๋ง์ ์ฌ๋ฌ ๊ธฐ์ ๋ค์ ํ๋ก์ ํธ์ ์ ์ฉํด ๋ณด๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ค์์ต๋๋ค.
ํ๋ก์ ํธ๋ฅผ ํ ๋, ๊ฐ ๊ธฐ์ ๊ฐ์ ์ฅ ๋จ์ ์ ๊ธฐ์ค์ผ๋ก ๊ฐ์ฅ ํ์ํ ๊ฒ์ ์ ํํ ํ ํ๋๋ง ์ ์ฉํด ํ๋ก์ ํธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์ข์์ง, ์๋๋ฉด ๊ฐ ๊ธฐ์ ๋ณ ๋ฉ์๋๋ฅผ ์์ฑํด์ ์ผ๋จ ์ฝ๋๋ฅผ ์์ฑํด ๋ณด๋ ๊ฒ์ด ์ข์์ง ๊ถ๊ธํฉ๋๋ค.
๋ํ ํ๋ก์ ํธ์์ ํด๋น ๊ธฐ์ ๋ค์ ๋ํ ๋ถ์์ ํ๋ก์ ํธ ๋ด์์ ๋๋ธ ํ์, ๋ถ์ ๊ณผ์ ๋ค์ ์ฝ๋๋ก ๋จ๊ฒจ๋๋ ๊ฒ์ด ์ข์์ง, ๊ทธ ์ค ๊ฐ์ฅ ์ข๋ค๊ณ ํ๋จํ ๋ฒ์ ์ ์ ์ธํ๋ฉด ๋ชจ๋ ์ญ์ ํ๋ ๊ฒ์ด ์ณ์ ๊ฒ์ธ์ง ๊ถ๊ธํฉ๋๋ค.
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
๊ธฐ์ ์คํ์ ์จ๋ด์ผ ์๋๊ฒ์ด๊ธฐ ๋๋ฌธ์, ํ์ต๊ณผ์ ์์ ํ์ฌ ์ฌ์ฉํ๋๊ฒ์ ์ฐ์ ํ๋๊ฒ์ ์ด์ฉ์์๋ ์ ํ์ด๊ณ , ํ๋ฆฐ ์ ํ์ด ์๋๋ค. ์ง์ ํด๋ณด๋ ๊ฒ์ด ๋ง๋ค.
๋ง์ฝ ํจ๊ณผ๊ฐ ์๋๋ผ๋, ๊ทธ๊ฒ ์์ฒด๋ ๊ฒฝํ์ผ๋ก ์์๋๋๊ฒ ์ข๋ค. ์ค๋ฌด์์๋ ๋ฐ๋๋ผ์ธ์ด์๊ธฐ ๋๋ฌธ์, ๊ทธ ์คํจ ๊ฒฝํ๋ ์ถํ ๊ธฐ์ ์ ํ์์์ ์ค์๋ฅผ ์ค์ผ ์ ์๋ ๊ฒฝํ์ด๊ธฐ ๋๋ฌธ์ ์์๋๋๊ฒ ์ข๋ค.
๊ณผ๊ฑฐ ์ฝ๋ ๋ฐ ์ฃผ์๋ ์ฐ์ ๋ชจ๋ ๋จ๊ฒจ๋๋๊ฒ ์ข๋ค. ์คํฐ๋ ๊ณผ์ ์ ํ๋ก์ ํธ๊ธฐ ๋๋ฌธ์, ๋ธ๋์น๋ ์ญ์ ํ ํ์๋ ์๋ค.
๋ฐฐํฌ ์ต์ข
๋ณธ๋ง ๊ฐ์ฅ ๊น๋ํ๊ฒ release ํ๊ทธํ ์์ผ๋์ ํ์๋ ์๋ค.
Q. ํ์ฌ ๊ตฌํ๋ ์ฑ
๋์ถ/์์ฝ ํ๋ก์ธ์ค๋ ์๋์ ๊ฐ์ต๋๋ค.
๋์ถ : ๋ก๊ทธ์ธํ ์ ์ ๊ฐ ์ง์ ๋ฒํผ์ ๋๋ฌ ์ฑ
์ ๋์ถ/๋ฐ๋ฉํ๋ ๋ฐฉ์
์์ฝ : ๋์ถ๋ ์ฑ
์ด ๋ฐ๋ฉ๋๋ ์ฆ์ ์ฒซ๋ฒ์งธ ์์ฝ์๊ฐ ์๋์ผ๋ก ์ฑ
์ ๋์ถ
ebook์ ๋์ถํ๋ ๊ฒ์ด ์๋๊ธฐ ๋๋ฌธ์ ์ ๋ฐฉ์์ ์ค๋ฌผ ์ฑ
์ ์ฌ์ฉํ๋ ๋์๊ด ์๋น์ค์๋ ๋ถ์ ํฉํ๋ค๊ณ ์๊ฐ๋ฉ๋๋ค.
ํ์ต์ฉ ํ๋ก์ ํธ๋ก์ ์์ ๋์ถ/์์ฝ ํ๋ก์ธ์ค๋ฅผ ์ ์งํด๋ ์๊ด์๋์ง, ํน์ ์ค์ ์๋น์ค์ ๋์
๊ฐ๋ฅํ๋๋ก ํ๋ก์ธ์ค๋ฅผ ๋ฐ๊ฟ์ผ ํ๋์ง ๋ฌธ์๋๋ฆฝ๋๋ค.
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
ํ์ฌ ์ํ ์๋น์ค ํ๋ก์ธ์ค๋ฅผ ์ ์งํด๋ ์ข์ ๊ฒ ๊ฐ๋ค.
์๋น์ค๊ฐ ์๋๋๊ฒ, ์ต์ ํํ๋๊ฒ๋ ์ค์ํ์ง๋ง,
์ฐ๋ฆฌ์๊ฒ ์ค์ํ๊ฒ์ ๋ฌธ์ ํด๊ฒฐ์ ์ํ ๊ธฐ์ ์ ํ, ํธ๋ฌ๋ธ ์ํ
๋ฑ ์ด๋ฐ ๊ณผ์ ์ ๋ ๊ฐ์กฐํ๋๊ฒ์ด ์ฐ์ ์์๊ฐ ๋๋ค.
Q. ํ์ฌ ์ฑ
๋๋ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ์์คํ
์์ ํน์ ๊ธฐ๊ฐ ๋์ ์ ์ฒญ ์์๋๋ก ์ฑ
์ ๋ฐฐ๋ถํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค.
์ด ๊ณผ์ ์์ ํ๋์ ์ฑ
์ ์ฌ๋ฌ๋ช
์ด ์ ์ฒญ์ด ๋๋ ๋์์ฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์์ต๋๋ค.
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ค์์์ ๋ฝ, ์ ํ๋ฆฌ์ผ์ด์
์์ค์์์ ๋ฝ(์ธ๋งํฌ์ด ๋ฐ ๋ฎคํ
์ค), ํน์ ์นดํ์นด๋ฅผ ํตํ ๊ตฌ์กฐ์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์๋ค๊ณ ์กฐ์ฌํ์๊ณ ํ์ฌ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ค์ ๋ฝ(๋น๊ด์ ์ธ ๋ฝ, ๋๊ด์ ์ธ ๋ฝ) ๋ฐ ์ ํ๋ฆฌ์ผ์ด์
์์ค์์ ๋ฝ(์ธ๋งํฌ์ด ๋ฐ ๋ฎคํ
์ค)๋ฅผ ๊ตฌํํ์ต๋๋ค.
์ ํ๋ฆฌ์ผ์ด์
๋ํ ํ์ฌ ์นดํ์นด๋ฅผ ํตํด ๋์์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ์ ์๋ ์ค์ ์์ต๋๋ค.
ํ์ฌ ์งํ ์ค์ธ ๋์ฉ๋ ํธ๋ํฝ์ ์ฒ๋ฆฌํ๋ ํ๋ก์ ํธ์์ Kafka๋ฅผ ๋์
ํ์ฌ ํ์ฅ์ฑ, ํ๋ ฅ์ฑ ๋ฐ ๊ณ ๊ฐ์ฉ์ฑ์ ํฅ์์ํค๊ณ ์ ํฉ๋๋ค.
Kafka์ ํ๋ก๋์์ ์ปจ์๋จธ๋ฅผ ๋ถ๋ฆฌํ์ฌ ์ฌ๋ฌ ์๋ฒ์ ๋ฐฐ์นํ๋ ์ํคํ
์ฒ๋ฅผ ๊ณ ๋ คํ๊ณ ์์ต๋๋ค. ์ด์ ๊ด๋ จํ์ฌ, ์๋ฒ๋ฅผ ์ธ ๊ฐ๋ก ๋๋์ด ํ๋ก๋์, Kafka, ์ปจ์๋จธ๋ฅผ ๊ฐ๊ฐ ๋ค๋ฅธ ์๋ฒ์ ๋ฐฐ์นํ๋ฉด ์ฑ๋ฅ ํฅ์ ์ธก๋ฉด์์ ์ด์ ์ด ์๋์ง, ์๋๋ฉด ํ๋ก๋์์ ์ปจ์๋จธ๋ฅผ ๊ฐ์ ์๋ฒ์ ๋๊ณ Kafka ์๋ฒ๋ง ๋ถ๋ฆฌํ๋ ๊ฒ์ด ๋ ํจ์จ์ ์ธ์ง ๊ถ๊ธํฉ๋๋ค.
๋ํ, ์ฌ๋ฌ ์๋ฒ์ ๊ฑธ์ณ ๋น๋๊ธฐ์ ์ธ ์์
์ฒ๋ฆฌ์ ๊ฒฐ๊ณผ ์ ์ก์ ์ํด ์น์์ผ์ด๋ ์๋ฒ ์ผํธ ์ด๋ฒคํธ ๋ฑ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๊ณผ, ์ปจ์๋จธ๊ฐ ์ง์ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต์ ๋ณด๋ด์ง ์๊ณ ํ๋ก๋์๋ฅผ ํตํด ์๋ต์ ์ ๋ฌํ๋ ๊ตฌ์กฐ ์ค ์ด๋ ์ชฝ์ด ๋ ํจ์จ์ ์ธ์ง, ์ค๋ฌด์์๋ ์ด๋ค ๋ฐฉ์์ ์ฃผ๋ก ์ฌ์ฉํ๋์ง์ ๋ํ ๋ฉํ ๋์ ์๊ฒฌ์ ๋ฃ๊ณ ์ถ์ต๋๋ค.
์ฝ๋๋ฅผ ์ฌ๊ตฌ์ฑํ๊ณ ์๋ก์ด ๊ธฐ์ ์ ๋์
ํ๋ ๋ฐ ์์ด ๋์ด๋์ ์๊ฐ์ ์ธ ๋ถ๋ด์ด ํฐ๋ฐ, ์ด๋ฌํ ๊ตฌ์กฐ ๋ณ๊ฒฝ์ด ์ฑ๋ฅ ํฅ์ ์ธก๋ฉด์์ ์ค์ง์ ์ธ ์ด์ ์ ์ ๊ณตํ ์ ์๋์ง, ๊ทธ๋ฆฌ๊ณ ์ฅ๊ธฐ์ ์ผ๋ก ๋ณด์์ ๋ ์ด๋ฌํ ์ํคํ
์ฒ ๋ณ๊ฒฝ์ด ํ๋ก์ ํธ์ ๊ธ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น ๊ฒ์ธ์ง์ ๋ํ ๋ฉํ ๋์ ๊ฒฝํ๊ณผ ์กฐ์ธ์ ๊ตฌํ๊ณ ์ ํฉ๋๋ค.
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์ํฉ์ ๋ฐ๋ฅธ ์ ๊ทผ : ๊ตฌ์กฐ๋ณ๊ฒฝ์ด๋ ๊ธฐ์ ๋์
์ ์๋น์ค์ ๋ฐ๋ผ ๋ค๋ฅผ ์ ์์ผ๋ฏ๋ก, ํน์ ์๋น์ค์ ๋ง๋ ์ ๊ทผ ๋ฐฉ๋ฒ์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค. A, B ์ฌ์ด์ ๊ตฌ์ฒด์ ์ธ ์ํฉ๊ณผ ์๊ตฌ์ฌํญ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฒฐ์ ์ ๋ด๋ ค์ผ ํฉ๋๋ค.
๋์ด๋์ ์๊ฐ์ ์ธ ๋ถ๋ด : ์ฝ๋๋ฅผ ์ฌ๊ตฌ์ฑํ๊ณ ์๋ก์ด ๊ธฐ์ ์ ๋์
ํ๋ ๊ณผ์ ์ ๋์ด๋๊ฐ ๋๊ณ ์๊ฐ์ด ๋ง์ด ์์๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ถ๋ด์ ๊ฐ์ํ์ฌ ๊ตฌ์กฐ๋ณ๊ฒฝ์ด ์ฑ๋ฅํฅ์ ์ธก๋ฉด์์ ์ค์ง์ ์ธ ์ด์ ์ ์ ๊ณต ํ๋์ง ์ฅ๊ธฐ์ ์ผ๋ก ํ๋ก์ ํธ์ ๊ธ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น ์ง์ ๋ํด ์ถฉ๋ถํ ๊ณ ๋ฏผํด ๋ด์ผํฉ๋๋ค.
์ดํด๋์ ์ค๋ฅ ํด๊ฒฐ : ํ์ฌ ์ ํฌ ํ๋ก์ ํธ์ ๋ํ ๊ตฌ์กฐ ์ดํด๊ฐ ๋๋ค๋ฉด, ๊ตฌ์กฐ ๋ณ๊ฒฝ ๊ณผ์ ์์ ๋ฐ์ ํ ์ ์๋ ์ค๊ฐ์ค๋ฅ๋ฅผ ์ฐํํ๊ฑฐ๋ ํด๊ฒฐ์ฑ
์ ์ฐพ๋ ๋ฐ ์ ๋ฆฌํ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค.
๋ฐ๋ผ์ ์ง๊ธ ์ํฉ์์๋ ์๋ํ๋ ๊ฒ์ด ๋ง๋ค๊ณ ์กฐ์ธ ํ์
จ์ต๋๋ค.
์คํจ ์ผ์ด์ค์ ๋ํ ๊ณ ๋ ค : ๊ตฌ์กฐ ๋ณ๊ฒฝ์ด ์ฑ๊ณต ํ ์ ์์ง๋ง, ์คํจํ ์ํ ์ญ์ ์กด์ฌํฉ๋๋ค.
์คํจ ์ผ์ด์ค์ ๋ํ ๊ณ ๋ฏผ๊ณผ ์ค๋น๊ฐ ํ์ํ๋ค๊ณ ํ์ญ๋๋ค.
Q. ์ ํฌ๊ฐ ์ฑ๋ฆฐ์ง์์ ๋ค๋ค๋ณด๊ณ ์ถ์ ์ฑ๋ฅ ๊ฐ์ ํ ํฝ์ ์๋์ฒ๋ผ 2๊ฐ๋ฅผ ๋ชฉํ๋ก ๋์์ต๋๋ค.
์๊ฒฌ์ ์ฌ์ญค๋ณด๊ณ ์ถ์ต๋๋ค.
[Spring][258] ๊ฒ์๊ด๋ จ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ์ฑ๋ฅ ๊ฐ์ ๋ฐฉ์ ์์ง
[Spring][258] ๋์์ฑ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ์ฑ๋ฅ ๊ฐ์ ๋ฐฉ์ ์์ง
A. ๋ฉํ ๋๋ต๋ณ์ ๋ฆฌ!
์ฑ๋ฆฐ์ง ํ ํฝ ์ ์ ์ ์ ์ ํ๋ฉฐ ๋๋ค ํ์ดํ๊ธฐ ์ด๋ ค์ด ๋ฌธ์ ๋ค์ด ๋ง๋ค.
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ์ ์ ๊ทผํด๋ณด๋ ๊ฒ์ด ์ข๋ค.
[Spring][258][3์ฃผ์ฐจ ๋ฉํ ๋ง] ์ง๋ฌธ๋ด์ฉ ์ ๋ฆฌ์ ๋ต๋ณ
1. Kafka ๋ค์ด๋ก๋ ๋ฐ ์ค์น

1.1 ๋ค์ด๋ก๋
โข
Apache Kafka ๊ณต์ ์น์ฌ์ดํธ
(https://kafka.apache.org)์์ Kafka 2.8.0 ๋ฒ์ ์ ๋ค์ด๋ก๋ํฉ๋๋ค.
โข
๋ค์ด๋ก๋ ๋ฐ์ kafka_2.13-2.8.0.tgz ํ์ผ์ ์์ถ ํด์ ํ์ฌ ํด๋๋ก ๋ณํํฉ๋๋ค.
1.2 ํ์ผ ๊ตฌ์ฑ ํ์ธ
โข
kafka_2.12-3.6.0 ํด๋ ์์๋ ์ฃผ๋ก ์ฌ์ฉํ bin๊ณผ config ํด๋๊ฐ ์์ต๋๋ค.
โฆ
bin/windows ํด๋: Zookeeper์ Kafka๋ฅผ ์คํ ๋ฐ ์ข
๋ฃํ ์ ์๋ ๋ฐฐ์น ํ์ผ์ด ์์ต๋๋ค.
โฆ
config ํด๋: Zookeeper์ Kafka ์ค์ ์ ๋ด๊ณ ์๋ ์ค์ ํ์ผ๋ค์ด ์์ต๋๋ค.
2. Zookeeper ๋ฐ Kafka ์คํ
[Spring][258] ์นดํ์นด ๊ธฐ์ด ๊ตฌํ
Load more








































































































