모델이 하나의 답변을 생성하고 유사 판례를 찾아오는 데 약 20초가 소요되기 때문에 다수의 이용자가 동시에 접속해 있는 경우, 한 대의 서버로는 트래픽을 감당하기 어려웠습니다.
트래픽을 4대의 V100 서버에 분산하기 위해 AWS의 Elastic Load Balancing을 사용했습니다. V100 서버 각각에 proxy 서버의 역할을 하는 EC2를 두고, Application Load Balancer를 4대의 proxy 서버와 연결하여 로드 밸런싱을 적용했습니다. 이때, Application Load Balancer는 고정 IP 주소를 지원하지 않기 때문에 Network Load Balancer를 Application Load Balancer의 앞 단에 배치하여 IP 주소를 고정했습니다.
로드 밸런싱을 통해 기존 1대의 모델 서버로 서비스를 운영했을 때보다 4배 많은 트래픽을 소화할 수 있었습니다. 또한 Applcation Load Balancer의 기본 기능 중 하나인 health check를 통해 모델 서버에 장애가 발생할 경우, 해당 서버로 트래픽을 보내지 않음으로써 서버의 장애가 서비스의 장애로 이어지는 것을 방지할 수 있었습니다.