2012-12-05 3 views
4

나는 3 개 프로젝트와 간단한 해결책이 있습니다Asp.Net MVC 4 응용 프로그램에서 MassTransit을 초기화 할 위치는 어디입니까?

  1. Asp.Net MVC4 웹 응용 프로그램 - 주요 웹 사이트
  2. 콘솔 응용 프로그램 - 작업 러너
  3. 콘솔 응용 프로그램 - 작업 러너

I MassTrasnsit을 대기열로 사용하여 웹 사이트의 작업 (예 : 이메일 보내기)이 웹 사이트를 차단하지 않고 대신 대기열에 게시되고 작업 주자의주의를 돌보고 싶습니다.

내 질문 : 대기열, 웹 응용 프로그램, 작업 주자 중 하나를 초기화하거나 별도의 콘솔 응용 프로그램을 만들어야합니까?

ps. 프로덕션 서버에서 실행할 때 콘솔 앱은 Windows 서비스가됩니다.

답변

4

대기열을 만드는 것은 일회성 작업이므로 기본 권한을 조정해야 할 수도 있으므로 미리 별도의 콘솔 앱을 사용하여 대기열을 만드는 것이 가장 좋습니다. 게시자 (웹 앱)와 소비자 (작업 주자)는 각각 대기열을 필요로하며 다른 서버에있는 경우 각 서버에 대기열을 만들어야합니다.

+0

워크 플로가 매우 간단하다는 이유로 모든 큐를 공유 할 수없는 이유는 무엇입니까? 웹 앱은 게시 만하고 작업 주자는 소비하며 둘 사이에는 중복이 없습니다. – Adabada

+0

MassTransit의 요구 사항은 https://masstransit.readthedocs.org/en/latest/configuration/gotchas.html을 참조하십시오. – stuartd

관련 문제