[디지털데일리 홍하나기자] 신한 제주은행이 자사의 제주도 여행 앱 개발 프로젝트에 아마존웹서비스(AWS) 기반의 데브옵스 체계를 구축한 사례를 소개했다. 특히 프로젝트 전 과정을 AWS 상에 구현하면서 느낀 AWS 도입 이점에 대해 공유했다.
정을용 신한DS 디지털서비스팀 수석은 17일 서울 삼성동 코엑스 그랜드볼룸에서 진행된 AWS서밋 서울에서 ‘제주지니 프로젝트, AWS 도입 사례’를 소개했다.
신한 제주은행은 여행 앱인 ‘제주지니’ 개발을 위해 인프라 폼 팩터만 클라우드를 활용하던 관행에서 벗어나 개발, 테스트, 스테이징, 배포 등 전 과정을 AWS상에서 구현했다. 제주지니는 현지인 추천 맛집, 여행 코스 등 여행에 필요한 다양한 서비스를 제공하는 앱이다.
정 수석은 “금융업계에서의 개발은 새로운 기술 방식보다 전통적인 워터 폴(Water Fall) 모델과 안정적인 시스템을 우선시 한다”며 “이와 달리 제주지니는 마이크로서비스 아키텍처(MSA) 기반의 풀 AWS로 개발한 신한금융그룹의 최초 여행 앱”이라고 소개했다.
정 수석에 따르면 제주지니 프로젝트를 시작한 당시, 여름 성수기를 앞두고 있어 개발 시간이 촉박했다. 때문에 많은 시간을 필요로 하는 전통적 개발방식인 온프레미스가 아닌 클라우드 도입을 처음으로 시도했다.
클라우드를 도입한 후에는 마이크로서비스 아키텍처를 방식을 도입했다. 개발자들이 클라우드 망으로 협업하며 개발할 수 있어, 개발·유지보수에 드는 시간과 비용을 절감할 수 있었다.
정 수석은 마이크로서비스 아키텍처에 대해 “무정지 시스템 가능, 사이드 임팩트 최소화의 효과를 얻을 수 있다”며 “뿐만 아니라 한 곳의 문제가 전체에 영향을 주지 않는 장점이 있다”고 말했다.
클라우드 활용과 비금융 앱 개발이 처음인 만큼, 개발자로서의 고민도 많았다. 정보앱인 제주지니의 특성상 풍부한 데이터베이스(DB)가 필요했다. 고민 끝에 신한 제주은행은 마이에스큐엘(MySQL)을 적용했다. 지금까지 데이터 부하 문제없이 사용하고 있다는 것이 정 수석의 설명이다.
또 앱 속도를 개선하기 위해 단말 브라우징 캐스팅과 서버 기반의 카페인 캐시를 적용했다. 안정적인 채팅을 위해 액티브MQ도 적용했다.
다중언어 지원에 대한 고민도 해결했다. 현재 제주지니는 한국어와 중국어 버전으로 서비스를 제공하고 있다. 중국어 버전에는 안정적인 네트워킹을 위해 클라우드 프론트를 적용했다. URL 호출 시 느려지는 현상을 해결하기 위해 중국의 API를 사용했다. 이때 AWS를 통해 중국의 바이두 푸쉬를 적용했다.
정 수석은 AWS에 대해 “완전관리형 서비스”라고 표현하며 “안정적인 운영이 가능하며, 덕분에 운영과 개발을 동시에 할 수 있었다”고 소개했다.
아울러 “현재 기술적으로 모놀리틱(Monolithic)에서 마이크로서비스 아키텍처로, 더 나아가 서버리스로 가고 있다”며 “앞으로 클라우드는 서버 없는 세상에 도달할 것으로 전망되며, 제주지니도 서버리스 형태의 서비스를 도입해 새로운 변화에 대응할 것”이라고 밝혔다.