2016-07-14 12 views
1

플러그인 :방법은 새로운 수수께끼에 결석 나는 최신 버전으로 프로젝트의 메시징이 라이브러리를 업데이트

  • 수수께끼
  • Rebus.RabbitMQ
  • Rebus.Castle.Windsor
  • Rebus.Log4Net
  • Castle.Windsor

나는 w 매우 혼란 스러웠 암탉은이 버전에서 매우 편리한 오래된 방법 중 일부가 빠져 있음을 발견했습니다.

나는 다음과 같은 수수께끼 구성 API를 가지고 :

Configure.With(new WindsorContainerAdapter(container)) 
     .Logging(l => l.Log4Net()) 
     .Transport(t => t.UseRabbitMqAndGetInputQueueNameFromAppConfig(connectionString) 
     .ManageSubscriptions().SetPrefetchCount(5)) 
     .MessageOwnership(d => d.FromRebusConfigurationSection()) 
     .Serialization(s => s.Use(new MySerializer())) 
     .CreateBus() 
     .Start(); 

이 방법은 새로운 버전의 결석 :

  • UseRabbitMqAndGetInputQueueNameFromAppConfig RebusConfigurer에서 RabbitMqOptionsBuilder
  • MessageOwnership에서
  • ManageSubscriptions
  • Log4Net e VS에 의해 인정조차되지 않는 라이브러리에 장보기가 있습니다.

Rebus 설명서에는 여러 곳의 구식 방법과 시나리오에 대한 참조가 있지만 아직도 있습니다.

이전의 편리한 방법으로 무엇을 했습니까? 아무도 같은 문제가 있었고 현재 버전 (0.99.67)에서 클라이언트를 구성하는 기존 방법에 사용할 api를 알려줄 수 있습니다.

+0

가장 좋은 방법은 [문제 제기] (https://github.com/rebus-org/Rebus/issues) – stuartd

답변

1

Rebus 버전은 "Rebus 1"- Rebus는 0.90.0 버전에서 "Rebus 2"

으로 매우 큰 업데이트 (코어를 다시 작성하고 대부분의 libs 전달을 포팅 한 것)를 받았습니다.

그래서 가장 좋은 건 (윈저, 및 Log4net 통합 패키지와 RabbitMQ에 동일한 작업을 수행) 2로 업데이트하기로 결정 그래서 만약

수수께끼 2는, 수수께끼 1과 호환되지 않습니다 Update-Package Rebus -Version 0.84.0에 아마 그 사실을 알고 있어야합니다. (당신이 발견 한 것처럼) 또한

이 가장 큰 변화는 따라서 IBus 대부분의 방법은 지금 async 있다는 것입니다 및 API 변경의 몇 가지를 보았다는 당신이에없는 경우 await bus.Send(...) (또는 bus.Send(...).Wait()를 예해야합니다 async 방법)

+0

답변 해 주셔서 감사합니다. 나는 Rebus와 메시징을 처음 사용합니다. 당신은 나에게 낡은 방법 대신에 무엇을 사용해야하는지에 대한 힌트를 줄 수 있겠습니까? 또한 UseRabbitMqAndGetInputQueueNameFromAppConfig 대신 새로운 Rebus에서 뭔가를 사용할 수 있습니까? rebus config에서 큐 이름을 읽으려면 ManageSubscriptions 대신 무엇을 사용해야합니까? 및 MessageOwnership (d => d.FromRebusConfigurationSection() – TakinosaJi

+0

예 - 확실히 여기를 확인하십시오 : https://github.com/rebus-org/Rebus/issues/490#issuecomment-232889458 – mookid8000

+0

안녕하세요 @ TakinosaJi - 만족 스럽다면 답으로, 질문에 답을 표시해 주시겠습니까? – mookid8000