네트워크

API 서버 해외에도 적용하기 (시작)

민초부 2023. 11. 2. 16:25
반응형

 

 

  • 배경
    • 한국에서 제공 중인 서비스들을 묶어 카타르 기업에 제공하기로 하였음 
    • 스마트팜 센서값들을 계속 받고 그 값들을 2차, 3차로 계산해서 저장해야하는 센서 메인 서버는 카타르 근처 바레인 리전에 생성해서 배포하기로 하였음
    • Ation 서버는 적당한 latency가 있어도 사용에 문제없기에 굳이 바레인에 똑같이 RDS랑 서버를 만들어서 하고싶지 않았다.
      (한국에서도 외국인 노동자들은 와이파이 없으면 사용을 못 하는데 스마트팜 특성상 와이파이가 미약하게 터지는 곳도 많아 사실 카타르에서 사용하는 것과 별반 다르지 않은 유저 환경이라 판단하였다)
    • 근데 중동에서 한국 리전을 보는건 생각보다 Latency가 더 심할 것 같다는 걱정을 지울 수가 없고 VPN을 통해 테스트를 해볼까했지만 해봤자 뭐해라는 생각이 들면서 바로 CDN CloudFront를 API 서버에 적용시켜 Latency를 줄이자라는 결론에 도달
  • CDN이란?
    • 웹 콘텐츠를 전 세계 여러 위치에 분산된 서버 네트워크에 저장하여 전세계 각지에서 빠르게 요청하여 받을 수 있게끔 하는 방식이다.
    • 이걸 API에 적용시켜 GET 요청 결과값들을 바레인(카타르 근처 리전이니깐)에 저장하고 유저가 똑같은 Request를 요청했을 때 이걸 Return하도록해 Latency를 확 개선하도록하는 것
      • 특히 스마트팜 지도 정보를 조회할 일이 다수 있는데 이건 큰 효과가 있을 듯 함 (지도 정보는 안 바뀜)
        + 겸사겸사 백엔드 서버 부하도 줄어들고 괜찮을 듯
    • 고려해야하는 사항
      • 같은 리퀘스트 호출이 과연 많을 것인가?
      • 캐싱한 데이터를 얼마나 저장하고 있을 지 
        • 데이터가 변경되었을 때 그냥 캐싱 데이터를 갱신할지 설정해도 됨 
반응형