2021.09 ~ 2022.03

문제점

  • ν΄λΌμš°λ“œ μ„œλΉ„μŠ€μ™€ κ΄€λ ¨λœ λͺ¨λ‹ˆν„°λ§ 도ꡬ가 많고, μ•Œλ¦Ό 채널이 νŒŒνŽΈν™”λ˜μ–΄ 있음
  • μ‹ κ·œ μ„œλΉ„μŠ€μ™€ 리전이 μΆ”κ°€λ μˆ˜λ‘ 점점 더 λ§Žμ€ μ–‘μ˜ λͺ¨λ‹ˆν„°λ§ μ•Œλ¦Όμ„ λ°›κ²Œ 됨
  • λ§Žμ€ λ©”μ‹ μ € μ•Œλ¦Όμ΄ λ°œμƒν•˜λŠ” 만큼, μŠ€νŒΈμ„± μ•Œλ¦Όλ„ μ‘΄μž¬ν•˜λ©° μ•Œλ¦Όμ˜ μ€‘μš”λ„λ₯Ό νŒλ‹¨ν•˜κΈ° 어렀움
  • λ‹¨μΌν™”λœ μ•Œλ¦Ό 채널이 μ—†μ–΄ λ†“μΉ˜λŠ” μ•Œλ¦Όλ„ 자주 λ°œμƒν•˜κ²Œ 됨

ν•΄κ²° 방법

  • λͺ¨λ‹ˆν„°λ§ λ„κ΅¬μ—μ„œ λ°œμƒν•˜λŠ” λͺ¨λ“  μ•ŒλžŒμ˜ μˆ˜μ‹  채널을 톡합
  • λŒ€λΆ€λΆ„μ˜ μ•Œλ¦Όμ€ μ›ΉμœΌλ‘œ μ‘°νšŒν•˜λ„λ‘ ν•˜κ³ , κΌ­ ν•„μš”ν•œ μ•Œλ¦Όμ„ λ©”μ‹ μ €λ‘œ μ „μ†‘ν•˜λ„λ‘ λ³€κ²½
  • κ·Έλž˜ν”„λ₯Ό 톡해 μ•Œλ¦Ό λ°œμƒ 좔이λ₯Ό μ‹œκ°μ μœΌλ‘œ 확인할 수 μžˆλŠ” κΈ°λŠ₯ μΆ”κ°€

ꡬ쑰

기술 μŠ€νƒ

  • RMQ
  • Docker
  • FastAPI + Celery
  • Vue.js

도전

μ‹œμŠ€ν…œ κ΅¬ν˜„ 단계뢀터 ν™•μž₯성이 쒋은 μ„œλΉ„μŠ€λ₯Ό λ§Œλ“€κ³ μž ν–ˆμŠ΅λ‹ˆλ‹€. 더 λ§Žμ€ λͺ¨λ‹ˆν„°λ§ μ„œλΉ„μŠ€κ°€ 좔가될 것이 자λͺ…ν–ˆκ³ , 각각의 μ‹œμŠ€ν…œμ—μ„œ λ³΄λ‚΄λŠ” 데이터 ν˜•μ‹ λ˜ν•œ λ‹€μ–‘ν•  κ²ƒμœΌλ‘œ μ˜ˆμƒν–ˆκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.
λ”°λΌμ„œ μ‹œμŠ€ν…œμ„ μ„€κ³„ν•˜λŠ” λ‹¨κ³„μ—μ„œ λ©”μ„Έμ§€ 큐 방식을 κ³ λ €ν–ˆκ³ , λ²”μš©μ μΈ 데이터λ₯Ό λ°›μ•„ ν›„μ²˜λ¦¬ν•˜λŠ” celery workerλ₯Ό κ΅¬μ„±ν–ˆμŠ΅λ‹ˆλ‹€.
이후 μ‹€μ œλ‘œ λ°œμƒν•˜λŠ” μ΄λ²€νŠΈκ°€ λ§Žμ•„μ§μ— 따라 μ²˜λ¦¬ν•˜λŠ” λ°μ΄ν„°μ˜ 양은 맀우 μ¦κ°€ν–ˆμ§€λ§Œ, λ°±μ—”λ“œ DBλ₯Ό MariaDB μ—μ„œ ElasticSearch둜 λ³€κ²½ν•œ 것 이외에 둜직과 ꡬ성은 큰 λ³€κ²½ 없이 μ•ˆμ •μ μœΌλ‘œ μš΄μ˜ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

κ²°κ³Ό

  • 7개 μ΄μƒμ˜ 이벀트 μ‹œμŠ€ν…œμ„ WARD ν”Œλž«νΌμœΌλ‘œ 톡합
  • λΆˆν•„μš”ν•œ λ©”μ„Έμ§€ 채널 톡합 및 제거
  • ν˜„μž¬ 일일 1.2천만개 μ΄μƒμ˜ λͺ¨λ‹ˆν„°λ§ 데이터λ₯Ό μ²˜λ¦¬ν•˜λŠ” ν”Œλž«νΌμœΌλ‘œ ν™•μž₯ν•΄ μš΄μ˜μ€‘

기여도

  • λͺ¨λ‹ˆν„°λ§ μ‹œμŠ€ν…œμ—μ„œ μ „μ†‘ν•˜λŠ” 데이터 λΆ„λ₯˜ (80%)
    • λͺ¨λ‹ˆν„°λ§ 주체, μ€‘μš”λ„μ— 따라 λΆ„λ₯˜
  • λͺ¨λ‹ˆν„°λ§ 이벀트 처리 λͺ¨λ“ˆ 개발 (50%)
    • μ •κ·œν‘œν˜„μ‹μ„ ν™œμš©ν•΄ 호슀트λͺ…에 λ”°λ₯Έ 리전 ꡬ뢄 μ½”λ“œ μž‘μ„±
    • μ •ν¬λ‘œ μˆ˜μ‹ ν•œ 데이터λ₯Ό key, value둜 λ‚˜λˆ„μ–΄ ES에 μ €μž₯
  • 톡합 λͺ¨λ‹ˆν„°λ§ μ›Ή ν”„λ‘ νŠΈμ—”λ“œ 개발 (30%)