New and shiny things in NServiceBus 3.0

2,527 views
2,352 views

Published on

Andreas Öhlund, one of the lead developers for NServiceBus, discusses the new and shiny things in NServiceBus 3.0. Come and get and overview of the new features in the upcoming NServiceBus 3.0 release.

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,527
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
39
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

New and shiny things in NServiceBus 3.0

  1. 1. What’s new in NServiceBus 3.0? Andreas Öhlund http://andreasohlund.net
  2. 2. Main goal for 3.0Better out of the box experience
  3. 3. Game plan• Storage• Naming endpoints• Handling time• Bridging remote sites• Random stuff• Q&A
  4. 4. What is a bus anyway? App App Bus.dll Bus.dll App App Bus.dll Bus.dll App App Bus.dll Bus.dllApp AppBus.dll Bus.dll
  5. 5. We need to store stuff
  6. 6. Storage needs Sagas SubscriptionsApp Timeouts AppBus.dll Bus.dll Available workers Deduplication Scaling out
  7. 7. • Default storage• Bundled with NServiceBus• NH=>NServiceBus.NHibernate.dll
  8. 8. It’s all in the name
  9. 9. Conventions based on the endpoint name Database OrdersInput queue Orders Orders Timeouts Orders.Timeouts Bus.dllGateway url http://localhost/orders
  10. 10. Naming endpoints• Defaults to your namespace• Attribute: [EndpointName(“Orders”)]• Install: /serviceName:Orders• Configure.DefineEndpointName(…)
  11. 11. DemoStoring sagas in RavenDB
  12. 12. Durable timeouts vNext
  13. 13. 3.0 Timeout manager Business Timeout Timeouts Logic Manager TimeoutsAppBus.dll
  14. 14. Bending time to your will • Sagas – RequestUtcTimeout<T>(…) – IHandleTimeout<T> – v2.6 Timeouts still supported • Bus.Defer<T>(…) • All endpoints have a local timeoutmanager
  15. 15. DemoUsing timeouts
  16. 16. Bridging remote sites
  17. 17. GatewaySiteA Endpoint App Msmq Bus.dll Gateway Headquarter Http Endpoint Gateway Msmq App Bus.dll
  18. 18. What can the gateway do for you?• Bridge physical sites• Supports multiple channels• Does de-duplication• Performs retries• Can act as a alternate channel for administrative messages• Enable Browser  NServiceBus communications
  19. 19. DemoGateway
  20. 20. Master Nodes Profile = Master Distributor App Timeoutmanager Bus.dll Gateway MyCluster Worker1 Worker2 MasterNode = MyCluster Profile = Worker MasterNode = MyClusterApp App Profile = WorkerBus.dll Bus.dll
  21. 21. Data bus File share / Blob storage Data Bus App Main transport App Bus.dll Bus.dll MSMQ / Azure Queuespublic DataBusProperty<byte[]> Image{ get; set; }
  22. 22. Other features• Unobtrusive mode• DatabusProperty<T>• ISendMessages / IReceiveMessages• Modeling tools• Exception details attached to messages in the error queue• Client side pipeline
  23. 23. Q & A
  24. 24. Thanks for listening! www.nservicebus.comhttp://andreasohlund.net @andreasohlund

×