์ง๋ ์ฃผ ์์นดํ ๋ฆฐ๋ถ๋ฅดํฌ์์ ์ด๋ฆฐ DUMP IT ์ปจํผ๋ฐ์ค(https://dump-ekb.ru/)์ ์ฐธ์ํ๋๋ฐ, ๋ฐฑ์๋ ๋ฐ ๋ฐ๋ธ์ต์ค ์น์ ์์ ๋ ผ์๋ ๋ด์ฉ๊ณผ ์ง์ญ IT ์ปจํผ๋ฐ์ค์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์๋์ง ์๋ ค๋๋ฆฌ๊ณ ์ถ์ต๋๋ค.
์๋ฒ๋ฆฌ์ค์ ๋ํ Evil Martians์ Nikolay Sverchkov
๋์ฒด ๊ฑฐ๊ธฐ์ ๋ฌด์์ด ์์๋์?
์ปจํผ๋ฐ์ค์๋ ๋ฐฑ์๋, ํ๋ก ํธ์๋, ๋ชจ๋ฐ์ผ, ํ ์คํธ ๋ฐ QA, ๋ฐ๋ธ์ต์ค, ๋์์ธ, ๊ณผํ ๋ฐ ๊ด๋ฆฌ ๋ฑ ์ด 8๊ฐ์ ์น์ ์ด ์์์ต๋๋ค.
๊ทธ๋ฐ๋ฐ ๊ฐ์ฅ ํฐ ํ์ Science and Management์ ์์ต๋๋ค.)) ๊ฐ๊ฐ ์ต๋ 350๋ช ์ ์์ฉํ ์ ์์ต๋๋ค. ๋ฐฑ์๋์ ํ๋ก ํธ์๋๋ ๊ทธ๋ค์ง ์์ง ์์ต๋๋ค. Devops ๋ฃธ์ ๊ฐ์ฅ ์์ง๋ง ํ๋์ ์ด์์ต๋๋ค.
Devops ๋ฐ Backend ์น์ ์ ๋ณด๊ณ ์๋ฅผ ๋ฃ๊ณ ๋ฐํ์์ ์ ์ ์ด์ผ๊ธฐ๋ฅผ ๋๋ด์ต๋๋ค. ์ ๋ ์ปจํผ๋ฐ์ค์์ ๋ค๋ฃฌ ์ฃผ์ ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์ด๋ฌํ ์น์ ์ ๊ฒํ ํ๊ณ ์ถ์ต๋๋ค.
SKB-Kontur, DataArt, Evil Martians, Ekaterinburg ์น ์คํ๋์ค Flag, Miro(RealTimeBoard)์ ๋ํ๊ฐ Devops ๋ฐ Backend ์น์ ์์ ์ฐ์คํ์ต๋๋ค. ๋ค๋ฃจ๋ ์ฃผ์ ๋ CI/CD, ๋๊ธฐ์ด ์๋น์ค ์์ , ๋ก๊น , ์๋ฒ๋ฆฌ์ค ์ฃผ์ ๋ฐ Go์์ PostgreSQL ์์ ๋ฑ์ด ์ ๋ค๋ฃจ์ด์ก์ต๋๋ค.
Avito, Tinkoff, Yandex, Jetstyle, Megafon, Ak Bars Bank์ ๋ณด๊ณ ์๋ ์์์ง๋ง ์ค์ ๋ก ์ฐธ์ํ ์๊ฐ์ด ์์์ต๋๋ค. ๋ณด๊ณ ์์ ๋น๋์ค ๋ นํ ๋ฐ ์ฌ๋ผ์ด๋๋ ์์ง ์ฌ์ฉํ ์ ์์ผ๋ฉฐ 2์ฃผ ์ด๋ด์ ๊ฒ์ํ๊ฒ ๋ค๊ณ ์ฝ์ํ์ต๋๋ค. dump-ekb.ru์์).
๋ฐ๋ธ์ต์ค ์น์
๋๋ผ์ด ์ ์ ์ด ์น์ ์ด 50์ ์ ๋์ ๊ฐ์ฅ ์์ ํ์์ ์งํ๋์๋ค๋ ์ ์ด์์ต๋๋ค. ํต๋ก์๋ ์ฌ๋๋ค์ด ์ ์์์ด์ :) ์ ๊ฐ ๋ค์ ๋ฆฌํฌํธ์ ๋ํด ๋ง์๋๋ฆด๊ฒ์.
ํํ๋ฐ์ดํธ ๋จ์์ ํ๋ ฅ์ ์ธก์
์ด ์น์ ์ Kontur์ Elasticsearch์ ๋ํ Vladimir Lil(SKB-Kontur)์ ๋ณด๊ณ ์๋ก ์์๋์์ต๋๋ค. ์๋นํ ํฌ๊ณ ๋ก๋๋ Elastic(์ต๋ 800TB์ ๋ฐ์ดํฐ, ์ค๋ณต์ฑ์ ๊ณ ๋ คํ๋ฉด ~1.3ํํ๋ฐ์ดํธ)์ ๋ณด์ ํ๊ณ ์์ต๋๋ค. ๋ชจ๋ Kontur ์๋น์ค์ ๋ํ Elasticsearch๋ ๋จ์ผ์ด๋ฉฐ 2๊ฐ์ ํด๋ฌ์คํฐ(์๋ฒ 7๊ฐ ๋ฐ 9๊ฐ)๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ ๋งค์ฐ ์ค์ํ๋ฏ๋ก Kontur์๋ ํน๋ณํ Elasticsearch ์์ง๋์ด(์ฌ์ค Vladimir ์์ )๊ฐ ์์ต๋๋ค.
Vladimir๋ ๋ํ Elasticsearch์ ์ด์ ๊ณผ ๊ทธ๊ฒ์ด ๊ฐ์ ธ์ค๋ ๋ฌธ์ ์ ๋ํ ์์ ์ ์๊ฐ์ ๊ณต์ ํ์ต๋๋ค.
์ด์ :
- ๋ชจ๋ ๋ก๊ทธ๊ฐ ํ ๊ณณ์ ์์ผ๋ฏ๋ก ์ฝ๊ฒ ์ก์ธ์คํ ์ ์์ต๋๋ค.
- XNUMX๋ ๋์ ๋ก๊ทธ๋ฅผ ์ ์ฅํ๊ณ ์ฝ๊ฒ ๋ถ์
- ๋ก๊ทธ ์์ ์๋๊ฐ ๋น ๋ฆ ๋๋ค.
- ์ฆ์ ์ฌ์ฉํ ์ ์๋ ๋ฉ์ง ๋ฐ์ดํฐ ์๊ฐํ
๋ฌธ์ :
- ๋ฉ์์ง ๋ธ๋ก์ปค๋ ํ์์ ๋๋ค(Kontur์ ๊ฒฝ์ฐ Kafka๊ฐ ํด๋น ์ญํ ์ ์ํํจ).
- Elasticsearch Curator ์์ ๊ธฐ๋ฅ (Curator์ ์ผ๋ฐ ์์ ์ผ๋ก ์ธํด ์ฃผ๊ธฐ์ ์ผ๋ก ๋์ ๋ถํ๊ฐ ๋ฐ์ํจ)
- ๋ด์ฅ๋ ์น์ธ ์์(๋ณ๋์ ๊ฝค ํฐ ๋์ ๋ํด์๋ง ๋๋ ๋ค์ํ ์์ค์ ์์ฐ ์ค๋น๊ฐ ๊ฐ๋ฅํ ์คํ ์์ค ํ๋ฌ๊ทธ์ธ์ผ๋ก๋ง)
Open Distro for Elasticsearch์ ๋ํด์๋ ๊ธ์ ์ ์ธ ๋ฆฌ๋ทฐ๋ง ์์์ต๋๋ค. :) ๋์ผํ ์ธ์ฆ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
ํํ๋ฐ์ดํธ๋ ์ด๋์์ ์ค๋๊ฐ?ํด๋น ๋
ธ๋๋ 12*8Tb SATA + 2*2Tb SSD๋ฅผ ๊ฐ์ถ ์๋ฒ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. SATA์ ์ฝ๋ ์คํ ๋ฆฌ์ง, ํซ ์บ์ ์ ์ฉ SSD(ํซ ์คํ ๋ฆฌ์ง).
7+9 ์๋ฒ, (7 + 9) * 12 * 8 = 1536TB.
๊ณต๊ฐ์ ์ผ๋ถ๋ ์๋น๋ก ๋จ์ ์์ผ๋ฉฐ ์ค๋ณต ๋ฑ์ ์ํด ๋ฐ๋ก ๋ณด๊ด๋์ด ์์ต๋๋ค.
Kontur, Elba ๋ฑ์ ๋ชจ๋ ๋ณด๊ณ ์๋น์ค๋ฅผ ํฌํจํ์ฌ ์ฝ 90๊ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ๋ก๊ทธ๊ฐ Elasticsearch๋ก ์ ์ก๋ฉ๋๋ค.
์๋ฒ๋ฆฌ์ค ๊ฐ๋ฐ์ ํน์ง
๋ค์์ Serverless์ ๊ดํ DataArt์ Ruslan Serkin์ด ์์ฑํ ๋ณด๊ณ ์์ ๋๋ค.
Ruslan์ ์ผ๋ฐ์ ์ผ๋ก ์๋ฒ๋ฆฌ์ค ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ ๊ฐ๋ฐ์ด ๋ฌด์์ธ์ง, ๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ธฐ๋ฅ์ด ๋ฌด์์ธ์ง์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค.
์๋ฒ๋ฆฌ์ค๋ ๊ฐ๋ฐ์๊ฐ ์ด๋ค ๋ฐฉ์์ผ๋ก๋ ์ธํ๋ผ๋ฅผ ๊ฑด๋๋ฆฌ์ง ์๋ ๊ฐ๋ฐ ์ ๊ทผ ๋ฐฉ์์ ๋๋ค. ์ - AWS Lambda ์๋ฒ๋ฆฌ์ค, Kubeless.io(Kubernetes ๋ด๋ถ์ ์๋ฒ๋ฆฌ์ค), Google Cloud Functions.
์ด์์ ์ธ ์๋ฒ๋ฆฌ์ค ์ ํ๋ฆฌ์ผ์ด์ ์ ๋จ์ํ ํน์ API ๊ฒ์ดํธ์จ์ด๋ฅผ ํตํด ์๋ฒ๋ฆฌ์ค ๊ณต๊ธ์์๊ฒ ์์ฒญ์ ๋ณด๋ด๋ ๊ธฐ๋ฅ์ ๋๋ค. ์ด์์ ์ธ ๋ง์ดํฌ๋ก์๋น์ค์ธ ๋์์ AWS Lambda๋ ์๋ง์ ์ต์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์ง์ํฉ๋๋ค. ํด๋ผ์ฐ๋ ์ ๊ณต์ ์ฒด์ ๊ฒฝ์ฐ ์ธํ๋ผ ์ ์ง ๋ฐ ๋ฐฐํฌ ๋น์ฉ์ด 0.2์ด ๋๋ฉฐ, ์๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง์ํ๋ ๋น์ฉ๋ ๋งค์ฐ ์ ๋ ดํฉ๋๋ค(AWS Lambda - $1 / ๋จ์ ์์ฒญ XNUMX๋ง ๊ฐ).
์ด๋ฌํ ์์คํ ์ ํ์ฅ์ฑ์ ๊ฑฐ์ ์ด์์ ์ ๋๋ค. ํด๋ผ์ฐ๋ ์ ๊ณต์ ์ฒด๊ฐ ์ด๋ฅผ ์์ฒด์ ์ผ๋ก ์ฒ๋ฆฌํ๊ณ Kubeless๋ Kubernetes ํด๋ฌ์คํฐ ๋ด์์ ์๋์ผ๋ก ํ์ฅ๋ฉ๋๋ค.
๋จ์ ์ด ์์ต๋๋ค:
- ๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ด ์ ์ ๋ ์ด๋ ค์์ง๊ณ ์์ต๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ์ ํ๋กํ์ผ๋งํ๋ ๋ฐ ์ด๋ ค์์ด ์์ต๋๋ค(๋ก๊ทธ์๋ง ์ก์ธ์คํ ์ ์์ง๋ง ์ผ๋ฐ์ ์ธ ์๋ฏธ์ ํ๋กํ์ผ๋ง์ ๋ถ๊ฐ๋ฅํจ).
- ๋ฒ์ ๊ด๋ฆฌ ์์
์์งํ ๋งํด์ ๋ช ๋ ์ ์ Serverless์ ๋ํด ๋ค์์ง๋ง ์๋ ๋์ ์ด๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ๋ช ํํ์ง ์์์ต๋๋ค. Ruslan์ ๋ณด๊ณ ์ดํ ์ดํด๊ฐ ๋ํ๋ฌ๊ณ , Backend ์น์ ์ Nikolai Sverchkov(Evil Martians)์ ๋ณด๊ณ ์ดํ ํตํฉ๋์์ต๋๋ค. ์ ๊ฐ ์ปจํผ๋ฐ์ค์ ์ฐธ์ํ ๊ฒ์ ํ๋์ง ์์์ต๋๋ค :)
CI๋ ๊ฐ๋ํ ์ฌ๋๋ค์ ์ํ ๊ฒ์ ๋๋ค. ์๋๋ฉด ์น ์คํ๋์ค๋ฅผ ์ํด ์์ ๋ง์ CI๋ฅผ ์์ฑํ๋ ๊ฒ์ด ๊ฐ์น๊ฐ ์์ต๋๊น?
์์นดํ ๋ฆฐ๋ถ๋ฅดํฌ์ Flag ์น ์คํ๋์ค ์ฑ ์์์ธ Mikhail Radionov๋ ์์ฒด ์์ฑ CI/CD์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค.
๊ทธ์ ์คํ๋์ค๋ "์๋ CI/CD"(SSH๋ฅผ ํตํด ์๋ฒ์ ๋ก๊ทธ์ธํ๊ณ git pull์ ์ํํ๊ณ ํ๋ฃจ์ 100๋ฒ ๋ฐ๋ณต)์์ Jenkins์ ์ฝ๋๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ๋ฆด๋ฆฌ์ค๋ฅผ ์ํํ ์ ์๋ ์์ฒด ์์ฑ ๋๊ตฌ์ธ Pullkins๋ก ์ ํํ์ต๋๋ค. .
Jenkins๊ฐ ์๋ํ์ง ์์ ์ด์ ๋ ๋ฌด์์ ๋๊น? ๊ธฐ๋ณธ์ ์ผ๋ก ์ถฉ๋ถํ ์ ์ฐ์ฑ์ ์ ๊ณตํ์ง ์์๊ณ ์ฌ์ฉ์ ์ ์ํ๊ธฐ๊ฐ ๋๋ฌด ์ด๋ ค์ ์ต๋๋ค.
"ํ๋๊ทธ"๋ Laravel(PHP ํ๋ ์์ํฌ)์์ ๊ฐ๋ฐ๋ฉ๋๋ค. CI/CD ์๋ฒ๋ฅผ ๊ฐ๋ฐํ ๋ Mikhail๊ณผ ๊ทธ์ ๋๋ฃ๋ค์ Telescope์ Envoy๋ผ๋ Laravel์ ๋ด์ฅ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ต๋๋ค. ๊ทธ ๊ฒฐ๊ณผ ๋ค์ด์ค๋ ์นํํฌ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ , ํ๋ฐํธ์๋์ ๋ฐฑ์๋๋ฅผ ๊ตฌ์ถํ๊ณ , ๋ค๋ฅธ ์๋ฒ์ ๋ฐฐํฌํ๊ณ , Slack์ ๋ณด๊ณ ํ ์ ์๋ PHP(์ฐธ๊ณ ) ์๋ฒ๊ฐ ํ์ํ์ต๋๋ค.
๊ทธ๋ฐ ๋ค์ ๋ธ๋ฃจ/๊ทธ๋ฆฐ ๋ฐฐํฌ๋ฅผ ์ํํ๊ณ ๊ฐ๋ฐ-๋จ๊ณ-ํ๋ก๋์ ํ๊ฒฝ์์ ๊ท ์ผํ ์ค์ ์ ๊ฐ์ง ์ ์๋๋ก Docker๋ก ์ ํํ์ต๋๋ค. ์ฅ์ ์ ๋์ผํ๊ฒ ์ ์ง๋๊ณ ํ๊ฒฝ์ ๊ท ์งํํ๊ณ ์ํํ ๋ฐฐํฌ ๊ฐ๋ฅ์ฑ์ด ์ถ๊ฐ๋์์ผ๋ฉฐ Docker๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๋ ค๋ฉด Docker๋ฅผ ๋ฐฐ์์ผ ํ ํ์์ฑ์ด ์ถ๊ฐ๋์์ต๋๋ค.
์๋ฒ ๋ฆด๋ฆฌ์ค ๋กค๋ฐฑ ํ์๋ฅผ 99%๊น์ง ์ค์ธ ๋ฐฉ๋ฒ
Devops ์น์ ์ ๋ง์ง๋ง ๋ณด๊ณ ์๋ Miro.com(์ด์ RealTimeBoard)์ ์์ Devops ์์ง๋์ด์ธ Viktor Eremchenko๊ฐ ์์ฑํ ๊ฒ์ ๋๋ค.
Miro ํ์ ์ฃผ๋ ฅ ์ ํ์ธ RealTimeBoard๋ ๋ชจ๋๋ฆฌ์ Java ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. ๊ฐ๋ ์ค์ง ์๊ฐ ์์ด ์ด๋ฅผ ์์ง, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ๋ ๊ฒ์ ์ด๋ ค์ด ์์ ์ ๋๋ค. ์ด ๊ฒฝ์ฐ ๋กค๋ฐฑํ ํ์๊ฐ ์๋๋ก ํด๋น ๋ฒ์ ์ ์ฝ๋๋ฅผ ๋ฐฐํฌํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค(๋ฌด๊ฑฐ์ด ๋จ์ผ์ฒด์).
์ด๋ฅผ ์ํํ ์ ์๋ ์์คํ ์ ๊ตฌ์ถํ๋ ๊ณผ์ ์์ Miro๋ ์ํคํ ์ฒ ์์ , ์ฌ์ฉ๋ ๋๊ตฌ(Atlassian Bamboo, Ansible ๋ฑ), ํ ๊ตฌ์กฐ ์์ (ํ์ฌ ์ ๋ด Devops ํ + ๋ค์ํ ํ๋กํ์ ๊ฐ๋ฐ์๋ก ๊ตฌ์ฑ๋ ๋ณ๋์ Scrum ํ).
๊ทธ ๊ธธ์ ์ด๋ ต๊ณ ํ๋ํ ๊ฒ์ผ๋ก ํ๋ช ๋์๊ณ Victor๋ ๊ฑฐ๊ธฐ์ ๋๋์ง ์์ ์ถ์ ๋ ๊ณ ํต๊ณผ ๋์ฒ์ฃผ์๋ฅผ ๊ณต์ ํ์ต๋๋ค.
์ง๋ฌธ์ ํด์ ์ฑ
์ ๋ฐ์์ต๋๋ค
๋ฐฑ์๋ ์น์
์ ๋ Nikolay Sverchkov(Evil Martians), ์๋ฒ๋ฆฌ์ค์ ๊ดํ ๋ณด๊ณ ์, ๊ทธ๋ฆฌ๊ณ ์๊ฒฉ ์ธก์ ์ ๊ดํ Grigory Koshelev(Kontur ํ์ฌ)์ 2๊ฐ ๋ณด๊ณ ์์ ์ฐธ์ํ์ต๋๋ค.
๋จ์ํ ํ์ฌ์๋ฅผ ์ํ ์๋ฒ๋ฆฌ์ค
Ruslan Sirkin์ด Serverless๊ฐ ๋ฌด์์ธ์ง ์ด์ผ๊ธฐํ๋ค๋ฉด Nikolay๋ Serverless๋ฅผ ์ฌ์ฉํ ๊ฐ๋จํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณด์ฌ์ฃผ๊ณ , AWS Lambda์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น์ฉ๊ณผ ์๋์ ์ํฅ์ ๋ฏธ์น๋ ์ธ๋ถ ์ฌํญ์ ๋ํด ์ด์ผ๊ธฐํ์ต๋๋ค.
ํฅ๋ฏธ๋ก์ด ์ธ๋ถ์ ๋ณด: ์ต์ ์ ๋ฃ ์์๋ 128Mb์ ๋ฉ๋ชจ๋ฆฌ์ 100ms์ CPU์ด๋ฉฐ ๋น์ฉ์ $0,000000208์ ๋๋ค. ๋ํ ๋งค์ 1๋ง ๊ฑด์ ์์ฒญ์ด ๋ฌด๋ฃ์ ๋๋ค.
Nikolai์ ์ผ๋ถ ๊ธฐ๋ฅ์ ์ข ์ข 100ms ์ ํ์ ์ด๊ณผํ๊ธฐ ๋๋ฌธ์(์ฃผ ์ ํ๋ฆฌ์ผ์ด์ ์ Ruby๋ก ์์ฑ๋จ) Go๋ก ๋ค์ ์์ฑํ๋ฉด ์๋นํ ๋น์ฉ ์ ๊ฐ ํจ๊ณผ๋ฅผ ์ป์ ์ ์์์ต๋๋ค.
Vostok Hercules โ ์๊ฒฉ ์ธก์ ์ ๋ค์ ํ๋ฒ ํ๋ฅญํ๊ฒ ๋ง๋ค์ด ๋ณด์ธ์!
์๊ฒฉ ์ธก์ ์ ๊ดํ Grigory Koshelev(Kontur ํ์ฌ)์ ๋ฐฑ์๋ ์น์ ์ ๋ํ ์ต์ ๋ณด๊ณ ์์ ๋๋ค. ์๊ฒฉ ์ธก์ ์ ๋ก๊ทธ, ๋ฉํธ๋ฆญ, ์ ํ๋ฆฌ์ผ์ด์ ์ถ์ ์ ์๋ฏธํฉ๋๋ค.
์ด๋ฅผ ์ํด Contour๋ Github์ ๊ฒ์๋ ์์ฒด ์์ฑ ๋๊ตฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ณด๊ณ ์์ ๋๊ตฌ - Hercules,
Devops ์น์ ์ ์๋ Vladimir Lila์ ๋ณด๊ณ ์์์๋ Elasticsearch์ ๋ก๊ทธ ์ ์ฅ ๋ฐ ์ฒ๋ฆฌ์ ๋ํด ๋ ผ์ํ์ง๋ง, ์ฌ์ ํ ์์ฒ ๊ฐ์ ์ฅ์น์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ก๊ทธ๋ฅผ ์ ๋ฌํ๋ ์์ ์ด ๋จ์ ์์ผ๋ฉฐ Vostok Hercules์ ๊ฐ์ ๋๊ตฌ๊ฐ ์ด๋ฅผ ํด๊ฒฐํฉ๋๋ค.
ํ๋ก๋ RabbitMQ์์ Apache Kafka๊น์ง ๋ง์ ์ฌ๋๋ค์๊ฒ ์๋ ค์ง ๊ฒฝ๋ก๋ฅผ ๋ฐ๋์ง๋ง ๋ชจ๋ ๊ฒ์ด ๊ทธ๋ ๊ฒ ๋จ์ํ์ง๋ ์์ต๋๋ค.) ๊ทธ๋ค์ Zookeeper, Cassandra ๋ฐ Graphite๋ฅผ ํ๋ก์ ์ถ๊ฐํด์ผ ํ์ต๋๋ค. ๋๋ ์ด ๋ณด๊ณ ์(๋ด ํ๋กํ์ด ์๋)์ ๋ํ ์ ๋ณด๋ฅผ ์์ ํ ๊ณต๊ฐํ์ง ์์ ๊ฒ์ ๋๋ค. ๊ด์ฌ์ด ์์ผ์๋ฉด ์ปจํผ๋ฐ์ค ์น ์ฌ์ดํธ์์ ์ฌ๋ผ์ด๋์ ๋น๋์ค๋ฅผ ๊ธฐ๋ค๋ฆฌ์ค ์ ์์ต๋๋ค.
๋ค๋ฅธ ์ปจํผ๋ฐ์ค์ ๋น๊ตํ๋ฉด ์ด๋ค๊ฐ์?
๋ชจ์คํฌ๋ฐ์ ์ํธํํ ๋ฅด๋ถ๋ฅดํฌ์ ์ปจํผ๋ฐ์ค์ ๋น๊ตํ ์๋ ์์ง๋ง ์ฐ๋ ์ง์ญ์ ๋ค๋ฅธ ํ์ฌ์ ์ฌ๋ง๋ผ์ 404ํ์คํธ์ ๋น๊ตํ ์๋ ์์ต๋๋ค.
DAMP๋ 8๊ฐ์ ์น์ ์ผ๋ก ๋๋์ด ๊ฐ์ต๋๋๋ฐ ์ด๋ ์ฐ๋ ํ์์ ๊ธฐ๋ก์ ๋๋ค. ๋งค์ฐ ํฐ ๊ณผํ ๋ฐ ๊ฒฝ์ ์น์ ๋ ์ด๋ก์ ์ ๋๋ค. ์์นดํ ๋ฆฐ๋ถ๋ฅดํฌ์ ์ฒญ์ค์ ๋งค์ฐ ์ฒด๊ณ์ ์ ๋๋ค. ์ด ๋์์๋ Yandex, Kontur, Tinkoff๋ฅผ ์ํ ๋๊ท๋ชจ ๊ฐ๋ฐ ๋ถ์๊ฐ ์์ผ๋ฉฐ ์ด๋ ๋ณด๊ณ ์์ ํ์๋ฉ๋๋ค.
๋ ๋ค๋ฅธ ํฅ๋ฏธ๋ก์ด ์ ์ ๋ง์ ํ์ฌ๊ฐ ์ปจํผ๋ฐ์ค์ ๋์์ 3~4๋ช ์ ์ฐ์ฌ๋ฅผ ๊ฐ๋๋ค๋ ๊ฒ์ ๋๋ค(Kontur, Evil Martians, Tinkoff์ ๊ฒฝ์ฐ). ๊ทธ๋ค ์ค ๋ค์๋ ์คํฐ์์์ง๋ง ๋ณด๊ณ ์๋ ๋ค๋ฅธ ๋ณด๊ณ ์์ ์๋นํ ์ ์ฌํ๋ฉฐ ๊ด๊ณ ๋ณด๊ณ ์๊ฐ ์๋๋๋ค.
๊ฐ ๊ฒ์ธ๊ฐ ๋ง ๊ฒ์ธ๊ฐ? Urals ๋๋ ์ธ๊ทผ ์ง์ญ์ ์ด๊ณ ์๋ค๋ฉด ๊ธฐํ๊ฐ ์๊ณ ์ฃผ์ ์ ๊ด์ฌ์ด ์์ต๋๋ค. ๋ฌผ๋ก ๊ทธ๋ ์ต๋๋ค. ์ฅ๊ฑฐ๋ฆฌ ์ฌํ์ ์๊ฐํ์ ๋ค๋ฉด ์ง๋ ๋ช ๋
๊ฐ์ ๋ฆฌํฌํธ์ ์์ ๋ฆฌํฌํธ์ ์ฃผ์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ง์ญ ํ์์ ๋ ๋ค๋ฅธ ์ฅ์ ์ ๋ณด๊ณ ํ ๋ฐํ์์ ์์ฌ์ํต์ด ์ฝ๊ณ ๊ทธ๋ฌํ ์์ฌ์ํต์ ๋ํ ์ง์์๊ฐ ์ ๋ค๋ ๊ฒ์
๋๋ค.
Dump์ Ekaterinburg์๊ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค! )
์ถ์ฒ : habr.com