er	  ingen	  gåde.......	  Mogens	  Heller	  Grabe	  
Agenda!•  Hvad er dit problem?!•  Hvordan kan det løses?!•  Rebus!  !  !  Slides!    !+ snak!    !+ kode!
Mogens Heller Grabe!           !           !           !        mhg@d60.dk!       @mookid8000! http://mookid.dk/oncode!
Hvad er dit problem?!
For eksempel:!public class Køb : FinansielTransaktion{     public void Bogfør()     {           // (....)           foreac...
Long-lived transactions...!
begin tran!   DoThis()!   DoThat()!commit tran!
begin tran!   DoThis()!commit tran!   ?! begin tran!   DoThat()!commit tran!
Async Reliable Messaging!
Messaging!
Reliable!
Async!
Windows FTW!!1!
Hvad er så det der 
“service bus” for noget?!
Køkultur!
Request/reply!
Publish/subscribe!
Process manager!
NServiceBus!
MassTransit
Rhino Service Bus!
hmmm...!
Rebus!•  Første mål:!  –  Request/reply + publish/subscribe!  –  Lavet efter NServiceBus-modellen!  –  Bedre fejlbeskeder!
~ 400 linjer!!!
Simpel og intuitivkonfigurationshistorie!
Få, velvalgte features!
Ingen doodleware!
Rebus Core kun afhængig     af .NET 4 BCL!
Integration m. 3.partslibs viasmå, fokuserede assemblies!
De bedste fejlbeskeder!
Lav friktion!
Rebus!•  Version 0.11.1-alpha!•  Ikke længere ~ 400 linjer!
Rebus!•  Apache License v. 2!•  Kode på GitHub:
   http://github.com/mookid8000/Rebus !
Contributors!                           Rasmus	  Kroman                                         	       	   Hallas        ...
Rebus!•  install-package rebus –pre!•  evt. via!  –  rebus.castle.windsor!  –  rebus.structuremap!  –  rebus.mongodb!  –  ...
Eksempel!•  Lillebitte kommunikation   mlm. 2 processer!
Eksempel!•  Et vaskeægte   integrationsscenarie!
Hvad nu?!Battle-hardening!  Distributør!    Gateway!  (+ det løse)
        !
Tak for opmærksomheden!!     Mogens Heller Grabe!                !                !                !             mhg@d60.d...
Evaluering:	  hCp://bit.ly/cd2012c4	  
Image credits!•    Lyserød pistol: http://www.desantisholster.com/desantis-blog/girl-meets-gun !•    Plastikkæder: http://...
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Rebus er ingen gåde
Upcoming SlideShare
Loading in …5
×

Rebus er ingen gåde

2,768 views

Published on

Nu hvor NServiceBus er blevet til et kapitalistisk projekt, og det dermed er blevet forbundet med økonomiske overvejelser og andet besvær at benytte det, så er der plads til en ny open source hippie-bus i din enterprise: Rebus.

Rebus startede som et personligt research-projekt, hvor jeg forsøgte at få overblik over hvad det egentlig er man betaler for med NServiceBus. Siden er Rebus blevet lidt mere seriøs, og den binder nu produktionssystemer sammen adskillige steder i verden.

Rebus' filosofi er at den skal være simpel – simpel at komme i gang med, og simpel at bruge. Og så skal den have de sødeste og mest hjælpsomme fejlbeskeder.

Denne præsentation vil snakke lidt om distribuerede systemer og messaging, og så vil vi kigge på filosofien bag Rebus samt eksempler på hvordan man kommer i gang.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

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

No notes for slide

Rebus er ingen gåde

  1. 1. er  ingen  gåde.......  Mogens  Heller  Grabe  
  2. 2. Agenda!•  Hvad er dit problem?!•  Hvordan kan det løses?!•  Rebus! ! ! Slides! !+ snak! !+ kode!
  3. 3. Mogens Heller Grabe! ! ! ! mhg@d60.dk! @mookid8000! http://mookid.dk/oncode!
  4. 4. Hvad er dit problem?!
  5. 5. For eksempel:!public class Køb : FinansielTransaktion{ public void Bogfør() { // (....) foreach(var d in Pantebrev.Debitorer) { d.TilmeldTilCprMatch(); d.InhentKreditstatus(); } foreach(var k in Pantebrev.Kauti(...)}
  6. 6. Long-lived transactions...!
  7. 7. begin tran! DoThis()! DoThat()!commit tran!
  8. 8. begin tran! DoThis()!commit tran! ?! begin tran! DoThat()!commit tran!
  9. 9. Async Reliable Messaging!
  10. 10. Messaging!
  11. 11. Reliable!
  12. 12. Async!
  13. 13. Windows FTW!!1!
  14. 14. Hvad er så det der 
“service bus” for noget?!
  15. 15. Køkultur!
  16. 16. Request/reply!
  17. 17. Publish/subscribe!
  18. 18. Process manager!
  19. 19. NServiceBus!
  20. 20. MassTransit
Rhino Service Bus!
  21. 21. hmmm...!
  22. 22. Rebus!•  Første mål:! –  Request/reply + publish/subscribe! –  Lavet efter NServiceBus-modellen! –  Bedre fejlbeskeder!
  23. 23. ~ 400 linjer!!!
  24. 24. Simpel og intuitivkonfigurationshistorie!
  25. 25. Få, velvalgte features!
  26. 26. Ingen doodleware!
  27. 27. Rebus Core kun afhængig af .NET 4 BCL!
  28. 28. Integration m. 3.partslibs viasmå, fokuserede assemblies!
  29. 29. De bedste fejlbeskeder!
  30. 30. Lav friktion!
  31. 31. Rebus!•  Version 0.11.1-alpha!•  Ikke længere ~ 400 linjer!
  32. 32. Rebus!•  Apache License v. 2!•  Kode på GitHub:
 http://github.com/mookid8000/Rebus !
  33. 33. Contributors! Rasmus  Kroman     Hallas   n-­‐Larsen   Simon  Skov  BoisenAsger hallas   @rasmuskl   asger @ssboisen  @ Dig?  
  34. 34. Rebus!•  install-package rebus –pre!•  evt. via! –  rebus.castle.windsor! –  rebus.structuremap! –  rebus.mongodb! –  rebus.ravendb! –  rebus.log4net! –  (...)!
  35. 35. Eksempel!•  Lillebitte kommunikation mlm. 2 processer!
  36. 36. Eksempel!•  Et vaskeægte integrationsscenarie!
  37. 37. Hvad nu?!Battle-hardening! Distributør! Gateway! (+ det løse)
 !
  38. 38. Tak for opmærksomheden!! Mogens Heller Grabe! ! ! ! mhg@d60.dk! @mookid8000! http://mookid.dk/oncode!
  39. 39. Evaluering:  hCp://bit.ly/cd2012c4  
  40. 40. Image credits!•  Lyserød pistol: http://www.desantisholster.com/desantis-blog/girl-meets-gun !•  Plastikkæder: http://www.stanchionwholesaler.com/products/chain/mc_000 !•  Trollface: http://www.thebuzzmedia.com/troll-face-high-resolution/ !•  Eat SOAP: http://narwhaler.com/img/b7/h/eat-soap-b7HC4R.jpg !•  Just soap: 
 http://kinlane-productions.s3.amazonaws.com/api-evangelist/soap.gif !

×