작업을 순서대로 처리하는 데 도움이되는 대기열 작성 도구를 찾고 있습니다. 나는 웹 사이트에 가입하는 사용자의 예를 사용하여 문제를 전달하는데 도움이 될 것입니다. 실생활에서는 각각 1 분, 몇 천 명이 걸릴 수도 있습니다.똑같은 방식으로 처리되는 작업에 대한 독립적 인 정렬 된 대기열
USER1 - 등록 -> 프로세스 지불 - 사진
사용자 2 크기 조정> - -> 사진을 업로드 비밀번호 재설정 -> 사진을 업로드 - -> 크기 조정 사진
위의 작업을> 로그인 모든 사용자가 순서대로 처리해야합니다. 즉, 등록이 완료되기 전에 지불을 처리 할 수 없습니다. 이러한 각 작업은 동일한 방식으로 처리됩니다 (외부 서비스에 대한 http 요청의 실행).
사용자 1 등록에 시간이 오래 걸리면 사용자 2가 암호 재설정을 기다릴 필요가 없습니다. 하나의 큐에 여러 명의 작업자가있는 경우 다음 작업이 갑자기 중지 될 수 있으므로 사용자 작업이 잘못된 순서로 처리 될 수 있습니다.
현재 나는 redis리스트를 사용하여이를 수행하는 해킹 된 시스템을 가지고 있지만 그 이상은 아니며 개선이 필요합니다. 이 작업을 수행하는 선반 도구 나 패턴이 있다면 좋을 것입니다. 나는 잠재적으로 programataclly 각 사용자에 대해 rabbitmq에 새로운 대기열을 만들 수 있다고 생각했지만 그렇게 많이 설계되지는 않았다고 느꼈다.