목록 보기
서버 언어 전환 이야기
백엔드

서버 언어 전환 이야기

spoqa
spoqa
2022년 4월 15일

두줄요약

Python 서버를 Kotlin·Spring Boot로 전환한 배경과 일괄 마이그레이션 방식을 소개했습니다. API·DB를 유지하고 테스트와 회고로 전환 리스크를 관리했습니다.

문제 상황

  • Python 및 경량 프레임워크 경험·전문 인력 부족에 따른 장기 생산성 우려
  • 동적 타입과 덕 타이핑 환경에서 기능 확장·수정 시 타입 안정성 및 코드 추적 부담
  • GraphQL 단일 경로와 기존 운영 경험상 점진적 전환이 어려운 조건

해결 방법

  • Python 서버를 Kotlin·Spring Boot 기반 서버로 일괄 전환
  • API Schema와 Database 구조를 원칙적으로 유지해 비즈니스 코드 이전에 집중
  • 도메인 레이어 유닛 테스트와 애플리케이션 레이어 통합 테스트 병행

선택 이유

  • Kotlin의 정적 타입 보장과 타입 추론 기반 가독성·유지보수성 기대
  • Spring 생태계와 보편적 설정을 활용한 비즈니스 코드 집중 및 신규 인력 적응 단축
  • Java·Spring 및 Kotlin·Spring 중심의 국내 백엔드 인력풀 고려

성능/운영 포인트

  • 도메인별 기능 목록, 패키지 정리, 리팩터링 결과를 기반으로 전환 로드맵과 JIRA 작업 구성
  • QA에서 JPA 실행 환경 차이와 JWT 인증·인가 이슈 확인
  • JIRA Control Chart 기반 생산성 변화와 이슈 영향 분석, 단계별 회고 및 Action Item 관리

다음 읽기

#GraphQL 주제를 이어서 읽기

도메인 주도 개발 전환 이야기

도메인 문서화와 계층형 패키지 구조로 Flask 백엔드의 중복 로직과 불명확한 경계를 개선했습니다. Resolver 로직을 Service·Repository·Entity로 재배치하며 도메인 중심 리팩터링 방향을 정리했습니다.

spoqa
spoqa
아키텍처
전체 보기

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...