πŸ±β€πŸλ” λ‚˜μ€ λ°±μ—”λ“œλ₯Ό μœ„ν•΄ ν•΄μ•Όν•  일듀

devjeon1358Β·2019λ…„ 9μ›” 28일
8
post-thumbnail

λ°°ν¬λŠ” μ–΄λ–»κ²Œ?

배포λ₯Ό μ‹œμž‘ν•˜κΈ°μ— μ•žμ„œ κ°€μž₯ λ¨Όμ € 이루어져야할 λ‹¨κ³„μž…λ‹ˆλ‹€.
배포λ₯Ό μ–΄λ–€ μ„œλ²„μ—, μ–΄λ–€ λ°©μ‹μœΌλ‘œ 배포할 것인지 μ •ν•΄μ•Ό ν•©λ‹ˆλ‹€.
예λ₯Ό λ“€μžλ©΄, AWS LightSail에 μΈμŠ€ν„΄μŠ€ 2개λ₯Ό λ§Œλ“€κ³  ν•˜λ‚˜λŠ” DB μ„œλ²„λ‘œ μ“°κ³ , λ‹€λ₯Έ ν•˜λ‚˜λŠ” Dockerλ₯Ό μ„€μΉ˜ν•˜μ—¬ 도컀 μ»¨ν…Œμ΄λ„ˆμ— μ„œλ²„λ₯Ό κ΅¬λ™ν•˜λŠ” 방법이 μžˆμŠ΅λ‹ˆλ‹€.

μ΄λŸ¬ν•œ 방법을 μ •ν•˜μ—¬ 배포가 μ–΄λ–»κ²Œ μ΄λ£¨μ–΄μ§ˆμ§€ 고민해봐야 ν•©λ‹ˆλ‹€.

API Endpoint 뢄리

λͺ¨λ“  API μš”μ²­μ€ /버전/~~~~둜 μš”μ²­λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.
EX) /example β†’ /v1/example 으둜 λ³€κ²½

ν΄λΌμ΄μ–ΈνŠΈ: "μœ™? κ°‘μžκΈ° λ‚ λΌμ˜€λŠ” 데이터가 바뀐닀고? μ„œλ²„λ‹˜?"
λ°±μ—”λ“œ: "μ•„ κ·Έκ±° 뭐 λ•Œλ¬Έμ— λ°”κΏ¨μ–΄μš”!"
ν΄λΌμ΄μ–ΈνŠΈ: "μ•„... κ·Έλž˜μš”... 또 λ°”κΏ”μ•Ό ν•˜κ² κ΅°μš”..."
λ°±μ—”λ“œ: "γ… γ… γ… "
이런 ν˜„μƒμ΄ ν”„λ‘œλ•μ…˜μ—μ„œ λ°œμƒν•œλ‹€λ©΄...?
μ„œλ²„μ˜ μˆ˜μ •μ— μ˜ν•΄ 잘 λ™μž‘λ˜λ˜ ν΄λΌμ΄μ–ΈνŠΈλ„ μˆ˜μ •ν•΄μ•Ό ν•˜κ³ , λ°°ν¬μž‘μ—…μ„ ν΄λΌμ΄μ–ΈνŠΈ λ˜ν•œ ν•΄μ•Όν•©λ‹ˆλ‹€.

좔후에 λ²‘μ—”λ“œ 둜직 λ³€κ²½μ΄λ‚˜, κΈ°λŠ₯ μΆ”κ°€ μ‹œ κΈ°μ‘΄ ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ API 연동 κ΄€λ ¨ 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•Šλ„λ‘ μž‘μ—…μ„ ν•˜λŠ” 과정이 API Endpoint 뢄리 μž‘μ—…μ΄λΌκ³  ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

API λ¬Έμ„œν™”

ν΄λΌμ΄μ–ΈνŠΈ A: "이거 μ–΄λ–»κ²Œ μ—°κ²°ν•΄μ•Όν•΄?"
λ°±μ—”λ“œ: "이거 μ΄λ ‡κ²Œ μ΄λ ‡κ²Œ μ΄λ ‡κ²Œ μ—°κ²°ν•˜λ©΄ 됨"
ν΄λΌμ΄μ–ΈνŠΈ B: "이거 μ–΄λ–»κ²Œ 연결해야함?"
λ°±μ—”λ“œ: "이거 μ΄λ ‡κ²Œ μ΄λ ‡κ²Œ μ΄λ ‡κ²Œ μ—°κ²°ν•˜λ©΄ 됨"
도λ₯΄λ§ˆλ¬΄... 도λ₯΄λ§ˆλ¬΄... 도λ₯΄λ§ˆλ¬΄...

ν΄λΌμ΄μ–ΈνŠΈκ°€ μ–΄λ–»κ²Œ APIλ₯Ό μ‚¬μš©ν•˜κ³  μ ‘κ·Όν•˜λŠ”μ§€ 정리해주면 ν΄λΌμ΄μ–ΈνŠΈ μž‘μ—…μ΄ 더 μˆ˜μ›”ν•΄μ§‘λ‹ˆλ‹€.

ν΄λΌμ΄μ–ΈνŠΈ: "이거 μ–΄λ–»κ²Œ μ—°κ²°ν•΄μ•Όν•΄?"
λ°±μ—”λ“œ: "API λ¬Έμ„œμ— λ‚˜μ™€μžˆμœΌλ‹ˆ κ·Έκ±° 보고 μ—°κ²°ν•˜λ©΄λ¨"

직접 Excelμ΄λ‚˜ hwp, pdf λ“±μœΌλ‘œ μž‘μ—…μ„ ν•  μˆ˜λ„ μžˆκ² μ§€λ§Œ, GitBook, Swaggerλ“± API λ¬Έμ„œν™”μ— μ΅œμ ν™” 된 도ꡬλ₯Ό μ‚¬μš©ν•œλ‹€λ©΄ 더 쉽고 νŽΈν•˜κ²Œ λ¬Έμ„œλ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€!

CORS

μ„œλΉ„μŠ€ ν™˜κ²½μ— 따라 CORSλ₯Ό ν—ˆκ°€ν•΄μ•Ό ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
CORS에 λŒ€ν•œ μžμ„Έν•œ ν¬μŠ€νŠΈλŠ” wlsdud2194λ‹˜μ˜ 포슀트λ₯Ό μ°Έκ³ ν•˜μ‹œλ©΄ λ§Žμ€ 도움이 λ κ²λ‹ˆλ‹€!

λ‘œκΉ… / λͺ¨λ‹ˆν„°λ§ μ„€μ •

μ„œλ²„μ˜ 였λ₯˜λ₯Ό λΉ λ₯΄κ²Œ 확인할 수 μžˆλŠ” 방법을 μ°Ύμ•„μ•Ό ν•©λ‹ˆλ‹€.
λ§Œμ•½ νŒ€μ—μ„œ Slack 같은 λ©”μ‹ μ €λ₯Ό μ‚¬μš©ν•œλ‹€λ©΄, μ„œλ²„ 였λ₯˜ 보고 채널을 λ§Œλ“€μ–΄ λͺ¨λ‹ˆν„°λ§ ν•˜λŠ” 것도 쒋은 λ°©λ²•μž…λ‹ˆλ‹€.

λ”λΆˆμ–΄ API 응닡 μ‹œκ°„μ„ 확인할 수 μžˆλŠ” 도ꡬ (swagger-stats)λ₯Ό μ‚¬μš©ν•œλ‹€λ©΄,
API 응닡 μ‹œκ°„μ„ 확인해보고 응닡 μ‹œκ°„μ΄ κΈ΄ APIλ₯Ό μ΅œμ ν™” ν•˜λŠ” 것도 큰 도움이 λ©λ‹ˆλ‹€.

CI/CD μ„€μ •

μ„œλ²„μ— λ°°ν¬ν•˜κΈ° μœ„ν•œ λ°˜λ³΅λ˜λŠ” λ™μž‘ 처리λ₯Ό CI/CDλ₯Ό μ‚¬μš©ν•˜μ—¬ μžλ™ν™” ν•˜μ„Έμš”.
μ„œλ²„ 배포λ₯Ό μœ„ν•œ 번거러운 μž‘μ—…μ„ 쀄일 수 μžˆμŠ΅λ‹ˆλ‹€!

0개의 λŒ“κΈ€