문제는 단일 사용자의 여러 동시 요청을 지원하도록 설계되지 않은 레거시 시스템과 통합 된 최신 웹 응용 프로그램이 있다는 것입니다. 기본적으로 레거시 시스템은 단일 사용자로부터 한 번에 하나씩 만 처리 할 수있는 특정 유형의 요청이 있습니다. 여러 사용자가 여러 동시 요청을 처리 할 수 있지만 기술적 인 이유 때문에 단일 사용자가 여러 요청을 처리 할 수 없습니다. 이러한 상황에서 사용자의 첫 번째 요청은 성공적으로 완료되지만 첫 번째 요청이 실행되는 동안 들어오는 동일한 사용자의 후속 요청은 모두 실패합니다.사용자 당 단일 스레드 요청에 RabbitMQ (또는 유사한 메시지 대기열 시스템)을 사용할 수 있습니까?
Google 애플리케이션은 멀티 탭/멀티 브라우저에 친숙하며 여러 앱이 있다는 사실 때문에 사용자가 이러한 유형의 요청 중 하나 이상을 갖는 바람을 피울 수있는 특정 시나리오가 있습니다. 동시에 레거시 시스템으로 전송됩니다.
나는 RabbitMQ와 같은 것이 레거시 시스템 앞에 위치하고 사용자/IP별로 단일 스레드 요청을 활용할 수 있는지 판단하려고합니다. 웹 응용 프로그램이 모든 요청을 MQ에 보내고 사용자 별 대기열에 쌓여 한 번에 하나씩 레거시 시스템으로 전달된다는 생각이 들었습니다.
잠재적 인 대기열 수에 대한 우려가 있을지 모르겠다. 약 4,000 명의 사용자 기반이있다.
우리는 웹 응용 프로그램에서 개별적으로이 문제를 해결할 수 있지만 여러 응용 프로그램을 통해 논리가 중복되므로 두 가지 다른 응용 프로그램이 동시 요청을 실행할 수있는 잠재력을 여전히 갖고 있다고 생각합니다. .
의견을 보내 주시면 감사하겠습니다. 감사합니다.