레거시 점진 이관을 전략으로 푼 결
가장 힘들었던 건 멈출 수 없는 서비스의 코드를 점진적으로 이관한 자리였습니다. 한 번에 새로 짤 수 없어, 운영을 그대로 둔 채 안쪽을 바꿔야 하는 자리가 가장 어려웠습니다.
힘들었던 건 기술 자체보다 되돌릴 수 없다는 압박이었습니다. 그 자리에서 본인은 한 번에 바꾸는 대신, 새 코드와 기존 코드를 동시에 돌려 결과를 비교하는 방식을 제안했습니다. 같은 입력에 두 결과가 다르면 알림이 오게 두고, 차이가 0이 되는 구간부터 트래픽을 옮겼습니다.
두 달에 걸쳐 옮겼고, 운영 중단 없이 이관을 마쳤습니다. 다만 비교 코드를 유지하는 비용이 컸던 자리도 있었습니다.
이 자리에서 배운 건 되돌릴 수 없는 일은 한 번에 결정하지 않고, 비교로 확신을 쌓아가며 옮긴다는 부분이었습니다.