저는 야심적인 웹 응용 프로그램 프로젝트에 참여하는 초보 웹 개발자입니다.sql 서비스 중개자 기능 질문
그래서 일부 연구를 마친 후 SQL Service Broker에 대해 알게되었습니다. 내가 사용할 수있는 것 같지만 확실하지 않습니다. 배움에는 많은 시간을 할애해야하기 때문에, 그것이 나의 필요에 꼭 맞을 것이라고 확신하고 싶었습니다.
웹 사이트 사용자가 웹 사이트에 텍스트를 제출할 수있는 시스템을 구현해야합니다. 이 메시지 스트림은 FIFO 방식으로 중복되고 처리되어야하며 스트림의 다른 쪽 끝에서는 다른 사용자 그룹이 메시지를 처리해야합니다.
이제이 마지막 사용자 그룹 중 하나가 읽는 메시지는 다른 사람이 동시에 읽을 수 없도록 잠겨 있어야합니다. 그런 다음 사용자는 메시지를 처리할지 여부를 결정할 수 있습니다. 메시지를 처리하기로 결정한 경우에만 큐에서 삭제할 수 있습니다. 메시지를 처리하고 싶지 않다고 결정하면 메시지를 대기열 끝에 넣거나 (큐의 끝 또는 적어도 우선 순위가 가장 높음) 다른 사용자가 메시지를 읽고 결정할 수 있도록해야합니다 .
SQL Service Broker로 구현할 수있는 기능입니까? 내가 잘못 추적하고 있는가?
감사합니다.
Service Broker가 왜이 문제를 해결할 수 있다고 생각하는지 설명 할 수 있습니까? 사람들이 옳은 길을 가고 있는지 아닌지를 알려주려면 목적지가 아닌 어떤 트랙에 있는지 말해야합니다. ;-) – Tomalak
내가 이해하는 방식으로, 어떤 대기열 시스템이 이것으로 나를 도울 수 있습니다. 나는 대안을 살펴 봤고 기본적으로 모두 똑같은 일을하기 때문에 나는 SSB를 선택했다. FIFO, 1 : 1 메시지 배달, 이중화, 잠금, 비동기, 무거운로드 성능 .. 모두 청구서에 부합합니다. 나는 한 번 사용자가 읽은 메시지를 가장 우선 순위가 높은 대기열에 다시 넣을 수 있는지 여부를 확신하지 못합니다 (읽지 않은 것처럼). 질문을 잘못 이해 했습니까? :) 1 : 1 (인간)의 질문 - 답변 시스템을 구현하고 싶습니다. 기존 메시징 대기열 시스템을 사용하면 코드 1을 직접 작성하지 않아도됩니다. –
"대기열에 다시 넣으려면"본질적으로 "메시지를 다시 보내려는 것"을 의미하거나 대기열에서 꺼내는 대신 수신음을 들여다 보지 않습니다. SSB는 "순서대로"메시지 배달을 보장하므로 마지막에 메시지를 다시 대기시키는 것 외에 "메시지를 다시 넣는"방법이 있을지는 의문입니다. 이것은 도움이 될 것 같습니다 : http://www.simple-talk.com/sql/learn-sql-server/service-broker-foundations-workbench/ – Tomalak