[디지털데일리 이상일기자] 토스뱅크가 전통적 은행 시스템에서 핵심을 차지하고 있는 계정계시스템을 벗어나 채널계 시스템을 중심으로 한 빠르고 유연한 시스템 발전에 초점을 맞추고 있어 주목된다.
토스뱅크가 18일 서울 중구 대한상공회의소에서 열린 'IT서비스학회 2022 춘계학술대회'에서 ‘디지털뱅크’ 전략을 소개했다.
이 자리에서 박준하 토스뱅크 최고기술책임자(CTO)는 'IT 서비스 아키텍처 변화와 은행 시스템 혁신 방안'을 주제로 발표했다. 토스뱅크가 고객들에게 뱅킹 서비스를 끊김 없이, 또 효율적으로 제공하기 위해 내부적으로 시스템을 어떻게 애자일하게 변화시켜 왔는지 설명했다.
박 CTO는 “현재 대부분의 은행들은 굉장히 큰 모놀리틱 시스템을 운영하며, 거의 20, 30년전의 모습을 그대로 가지고 있다”며 “하지만 IT서비스 기반의 회사들은 그렇지 않다. 토스뱅크가 기존 은행들과 다른 이유”라고 강조했다.
토스뱅크가 활용하고 있는 시스템은 마이크로 서비스 아키텍처라고 불리는 체계다. 전통적인 금융권이 갖추고 있는 모놀리틱 시스템과 달리, 각각이 서비스별로 쪼개지는 구조를 갖추고 있다. 이로 인해 토스뱅크의 경우 여신, 수신, 카드 서비스는 서버와 데이터베이스가 별도로 분리되며, 시스템의 직접적인 참조 대신 HTTP API 등의 통신을 통해서만 참조를 진행한다.
이는 하나의 앱에서 토스 계열사의 모든 서비스를 제공하고 있는 '원앱' 전략을 차질 없게 수행할 수 있게 해주는 밑바탕이다. 은행, 송금, 증권, 보험 등 각 금융 서비스를 토스앱 하나로 제공하는 만큼 어느 하나의 서비스가 멈추면 고객 입장에서는 불편을 겪을 수 밖에 없다.
하지만 토스는 각 서비스가 장애가 나더라도 연계되지 않는 시스템을 구현해 토스앱 자체는 멈추지 않는 무중단 서비스를 가능하게 하고 있다.
박 CTO는 이를 두고 “기존 모놀리틱 시스템에 비해 매우 슬림해진 구조를 갖출 수 있게 됐다” 고 설명했다. 그러면서 “쪼개지는 서비스가 많아졌지만 리소스 낭비 등의 문제는 기술 발전으로 대부분 해결된 상황”이라고 덧붙였다. 가상화 기술이 발전함에 따라 물리적인 리소스를 유연하게 사용할 수 있게 돼 서비스를 쪼개는 과정이 낭비로 이어지지 않게 됐다는 것이다.
기존 금융권이 제기하는 각 모듈간 정보 공유의 단절 문제, 네트워크간 빈번한 호출에 따른 레이턴시 영향 극대화 문제 등도 상당 부분 해결했다. 동시에 유연한 변경과 새로운 서비스의 배포가 가능하다는 장점을 더해 고객 맞춤형 서비스를 구현한다.
토스뱅크가 기존 은행과 가장 큰 차이점은 채널계가 전달자 역할에 그치는 것이 아니라, 실제로 수행자의 역할을 하고 있다는 점이다. 이는 모놀리틱 시스템인 계정계가 더 커지는 것을 방지하고, 테스트 자동화, 서비스 배포 시점의 문제 인지 및 빠른 롤백 등의 시스템을 구축하는 결과로 이어지고 있다.
박 CTO는 “토스뱅크도 계정계는 은행 서비스를 빠르게 구축하는 과정에서 아직은 과도기적으로 기존 금융사의 것을 유지하고 있으며 이 또한 점차 토스뱅크만의 모습으로 구축해 나갈 계획”이라며 “현재 추가되는 서비스는 채널계 서버에 반영해 빠르고 유연하게 대처해 나가고 있다”고 설다.
박 CTO는 “기존 은행서비스는 텔러 중심의 서비스이다 보니 시스템의 구조 또한 고착화 될 수밖에 없었다”며 “반면 IT 서비스 회사들은 고객과의 접점 속에 많은 발전을 이뤄왔고, 은행서비스도 고객에게 매우 밀접한 서비스로 커가기 위해서는 IT 서비스에서 해법을 찾아야 한다”고 강조했다. “토스뱅크가 그 혁신을 계속 이끌 것이고, 시장에 적극적으로 공유해가겠다”고 덧붙였다.
토스뱅크가 채널계에 역점을 두고 있는 것은 전통적 은행에서의 계정계의 역할이 축소될 수 있다는 점을 시사해 주목된다. 오픈뱅킹, 마이데이터 등 금융 트랜잭션이 외부에 오픈되면서 대외 접점이 되는 채널계와 대외계의 중요성은 더욱 높아지고 있다.
때문에 계정계는 은행에서 가장 중요한 원장 시스템으로서의 역할을 담당하고 그 외 비즈니스와 플랫폼 사업과의 연계를 위한 채널계와 대외계를 비롯한 외부 채널 시스템의 중요성이 커질 것이란 관측이다.
한편 이 자리에서 토스뱅크 민재슬 개발자는 토스뱅크의 완전히 새로운 대출 시스템을 주제로 발표하며, 토스뱅크가 직접 내재화한 시스템, 전통적인 금융 시스템과의 연계를 새롭게 디자인한 측면을 강조했다.
특히 대출 심사 과정에서 관계 기관들이 트래픽양을 감당하지 못해 마비되는 문제를 소개하며, 이를 해결하는 방법을 사례로 소개했다.
민 개발자는 “사용자수가 갑자기 증가해 대외기관이 처리할 수 있는 트래픽의 양보다 많은 요청을 동시에 보내면 결국 상대 대외기관이 마비될 수밖에 없다”며 “토스뱅크는 대외 기관이 견딜 수 있을 만큼의 트래픽을 처리할 수 있도록 유량 제어 시스템을 도입했다”고 설명했다.
갑자기 많은 사용자가 토스뱅크에 진입하더라도 사용자는 안정적으로 대출심사를 받아볼 수 있도록 시스템을 설계한 것이다. 비즈니스 로직을 처리하기위한 관계형 데이터베이스로 MYSQL, 이벤트 처리를 위한 메시지 서비스로는 카프카(KAFKA) 그리고 유량제어와 캐시 처리를 위해서 레디스(REDIS)가 쓰였다. 전통적인 금융시스템과 달리, 독립된 서비스마다 필요에 따라 비즈니스 문제를 해결하는 구조를 취한다.
일반적으로 은행시스템은 고전적인 아키텍쳐로 구성돼 변화에 수동적인 것으로 인식되는 경우가 많다. 하지만 토스뱅크의 여신시스템은 구축 초기부터 변화에 빠르고 안정적으로 대응할 수 있도록 구축됐다. .대출이 실행되기까지 다양한 정보가 필요하고 각 비즈니스 로직에서 구축된 데이터베이스 정보와 더불어 코어뱅킹에서 제공하는 정보를 적절하게 활용할 수 있도록 설계된 덕분이다.
민 개발자는 “올해 1월 토스뱅크 대출 재개와 함께 많은 고객들이 몰리면서, 유량제어시스템이 가동됐다”며 “대외기관과의 파이프라인을 구축해 놓은 덕분에 토스뱅크의 트래픽이 대외기관에 전달되지 않을 수 있었고, 많은 고객들이 원하는 대출 실행 결과를 받아볼 수 있었다”고 밝혔다.