
AWS Elastic Load Balancer를 사용하여 앱의 로드 밸런싱을 시도합니다. 이 앱은 사용자 정의 TCP 기반 발신자/수신자입니다.
어쨌든 ELB는 연결된 다른 인스턴스를 무시하고 트래픽의 100%를 한 시스템으로 보내는 것으로 보입니다.
라운드/로빈 동작을 변경하는 데 옵션이 없습니다...
제안? 감사해요!
답변1
유일한 트래픽이 테스트에서 발생하는 경우 서버 고정성/친화성이 비활성화된 경우에도 항상 동일한 서버에 도달할 수 있습니다.
서버가 서로 다른 가용성 영역에 있는 경우 여러 ELB 설정(각 AZ에 하나씩)이 있으며 ELB에 대한 DNS 요청에 모두 반환됩니다. OS는 이들 중 하나를 선택하고 아마도 항상 동일한 것을 사용할 것입니다.
다른 지역에서 시도하거나 둘 다 동일한 AZ에 배치하여 동일한 결과를 얻는지 확인하세요. 작동한다면 실제 트래픽이 두 가용 영역 모두에 분산되므로 설정한 방식에 문제가 없을 것입니다.
답변2
AWS ELB를 사용하면 로드 밸런싱이 라운드 로빈이 아닙니다. 우리가 알아낸 것은 일반적으로 단일 IP의 트래픽이 항상 동일한 서버에 도달한다는 것입니다. 따라서 적절한 로드 밸런서를 테스트하는 접근 방식은 여러 EC2 인스턴스에서 분산 JMeter 설정을 사용하여 서로 다른 IP의 로드를 시뮬레이션하는 것입니다.