면접준비용 이전 프로젝트 관련

준비해둬야 될꺼 같아서 정리하는 프로젝트 했던거 내용

KDDI(au) / Softbank API마켓에 올라가는 API의 AP(Access Point) 구성

Requirements

  • API 문서

  • 필수 기능

    1. Account Create

    2. Login

    3. 토큰 인증

    4. HealthCheck

  • 우리 AI 엔진 기능 추가

  • 서버 자동화 부분

해결했던 문제들

  • 뭘로 개발할까?

    할줄 하는게 Python 이랑 Django/Flask 정도 밖에 없었고 사수도 없으니 업무를 완료하는데엔 Python + Django 밖에 없었습니다.

  • Healthcheck가 뭐고?

    서버에 돌아가고 있으면 200 OK

  • 계정 생성, 로그인, 토큰 인증

    • django-rest-framework

    • djangorestframework-simplejwt

    • TokenAuthentication

    무슨 헤더에 Bearer 토큰으로 쏴야 한다는 요건이 있었는데 잘 기억안남

    유저 데이터는 AWS S3로 DB구성해서 참조

  • 그외 AI 자연어 처리 기능

    • 백엔드에 String 쏘면 Embed 해주는 백엔드 서버 사내에 있는걸로 리다이렉트
  • AWS EC2에 어케 올려야되나?

    • Docker로 miniconda 이미지 깔고

    • 사내 Gitlab 인증정보 설치하고

    • venv 설정하고

    • Django에서 Serve

    • CTO분이 추가로 얘기해준건

      • 사용량 많을지도 모르니까 ELB로 오토 스케일링 설정

      • 방화벽 관련은 Route 53으로 설정

  • Swagger API 관련 문서

    • API Document 처음 써보는 거였는데 Swagger가 XML/Json 기반으로 쉽게 수정 가능하고 Postman처럼 Example도 쓸수 있어서 채택