Introduksjon til NServiceBus
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Introduksjon til NServiceBus

on

  • 2,533 views

 

Statistics

Views

Total Views
2,533
Views on SlideShare
1,455
Embed Views
1,078

Actions

Likes
0
Downloads
16
Comments
0

39 Embeds 1,078

http://sverrehundeide.blogspot.com 542
http://sverrehundeide.blogspot.no 89
http://sverrehundeide.blogspot.co.uk 67
http://sverrehundeide.blogspot.in 51
http://sverrehundeide.blogspot.com.au 38
http://sverrehundeide.blogspot.ca 34
http://sverrehundeide.blogspot.de 30
http://sverrehundeide.blogspot.fr 29
http://sverrehundeide.blogspot.se 25
http://sverrehundeide.blogspot.nl 21
http://sverrehundeide.blogspot.com.br 17
http://sverrehundeide.blogspot.jp 12
http://www.slideshare.net 12
http://sverrehundeide.blogspot.ru 11
http://sverrehundeide.blogspot.dk 11
http://sverrehundeide.blogspot.ro 8
http://sverrehundeide.blogspot.mx 7
http://sverrehundeide.blogspot.fi 7
http://sverrehundeide.blogspot.kr 6
http://sverrehundeide.blogspot.com.es 5
http://sverrehundeide.blogspot.it 5
http://sverrehundeide.blogspot.cz 5
http://sverrehundeide.blogspot.be 5
http://sverrehundeide.blogspot.sg 4
http://sverrehundeide.blogspot.co.il 4
http://sverrehundeide.blogspot.com.ar 4
http://sverrehundeide.blogspot.ie 3
http://sverrehundeide.blogspot.hk 3
http://translate.googleusercontent.com 3
http://sverrehundeide.blogspot.co.nz 3
http://sverrehundeide.blogspot.gr 3
http://sverrehundeide.blogspot.ch 3
http://sverrehundeide.blogspot.co.at 3
http://webcache.googleusercontent.com 2
http://sverrehundeide.blogspot.tw 2
http://sverrehundeide.blogspot.ae 1
http://sverrehundeide.blogspot.hu 1
http://sverrehundeide.blogspot.com.tr 1
http://sverrehundeide.blogspot.sk 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Erfaringer med NServiceBus
  • MÅ ikke bruke Generic Host, men Generic Host gjør det enklere å komme i gang med NServiceBus
  • IBus: Alle metoder har en tilsvarende Expect… metode i testbiblioteket
  • Biztalk kan ha mange ulike roller: Mottaker, avsender, subscriber, publisher

Introduksjon til NServiceBus Presentation Transcript

  • 1. Introduksjontil NServiceBus
    NNUG 25.05.2010
  • 2. Sverre HundeideSeniorkonsulentItera Consulting (tidligere Objectware)Twitter: @sverrehundeideBlog: http://sverrehundeide.blogspot.com
    Objectware har blitt Itera Consulting
  • 3. Kort om messagingpatterns
    NServiceBus egenskaper og konfigurasjon
    Demo
    Spørsmål og diskusjon
    Agenda
  • 4. UtvikletavUdiDahan
    Andreas Öhlundogflerebidrarogså
    Gjortomtil Open Source i 2006
    Versjon 2.0: Mars 2010
    Historien til NServiceBus
  • 5. Hvaeren “service bus”?
  • 6. "The bus is a lie!"
  • 7. Bus vs. Broker
    Broker, "hub and spoke"
  • 8. Bus vs. Broker
  • 9. Bus vs. Broker
    "Busses rule, brokers drool"
    - Dru Sellers
  • 10. Oppsummert: En service bus er
    DISTRIBUERT!
  • 11. Skalerbarhet
    Løse koplinger
    Interoperabilitet
    Robusthet
    Generelle messaging fordeler
  • 12. Asynkronekommunikasjonstyper med messaging:
    Store and forward (send and forget)
    Send / Receive (Request / Response) 
    Publish / Subscribe
    Messaging patterns støttet av NServiceBus
  • 13. Store and forward
    • Asynkront:
    • 14. Avsendertråden venter ikke
  • Store and forward - Eksempel
    Venter ikke på bekreftelse på at eposten har blitt sendt.
  • 15. Send / Receive (Request / Response)
  • 16. Send / Receive - Eksempel
    Klienten:
  • 17. Send / Receive - Eksempel
    Serveren:
  • 18. Send / Receive - Eksempel
    Klienten – Håndteresvaret:
  • 19. Send / Receive 
    Hvorskalsvaretsendes?
    Informasjonomsvarkøliggerpå MSQM-meldingen (standard MSMQ funksjonalitet).
  • 20. En tråd ligger og venter på svar og kjører callbackmetoden når svar kommer.
    Er ikke robust
    Send / Receive - Asynkonous callbacks
  • 21. Publish / Subscribe
  • 22. Publish / Subscribe
  • 23. Publish / Subscribe - Eksempel
    Publisher:
    Subscriptions gjøres til denne køen
  • 24. Publish / Subscribe - Eksempel
    Subscriber:
  • 25. Publish / Subscribe - Eksempel
    Subscriber:
  • 26. Publish / Subscribe - Eksempel
    NServiceBusvilsende en subscription melding vedoppstart:
  • 27. Ved pub/sub publisereseventer
    Ikkekommandoer (request meldinger)!
    Definerer en hendelseifortid
    Eksempel:
    OrderStatusChanged
    Eventer
  • 28. NServiceBus.dll
    Alle interface ligger her, ingen implementasjon
    NServiceBus.Core.dll
    Implementasjon avrammeverket
    Generert med ILMerge
    Inneholder mange eksterneavhengigheter:
    NHibernate ogFluentNHibernate 
    Spring
    Unntak: Log4Net, andreIoC-rammeverkenn Spring
    Forenkler deployment
    NServiceBus assemblies
  • 29. NServiceBuskonfigurasjon
  • 30. Konfigurasjon - Fluent API
  • 31. Convention over configuration
    Konfigurasjon
  • 32. ForenklerbrukenavNServiceBus
    BasertpåTopShelf
    Kan enkeltinstalleressom en Windows Service
    Deployessammen med alletjenestersomskalmotta, sendeellerpubliseremeldinger
    Kan ogsåbrukeNServiceBusuten Generic Host
    Håndterer “Profiler”
    Generic host
  • 33. Marker interfaces somdefinerer default konfigurasjon:
    AsA_Client, AsA_Server, AsA_Publisher
    Konfigurasjonav Generic Host
    • AsA_PublisherarverfraAsA_Server
    • 34. AsA_Clientkanikkekombineres med AsA_Publisher
  • Default konfigurasjonsalternativer:
    Konfigurasjon av Generic Host
    Transaksjonell
    Impersonation
    Sletter meldinger ved oppstart
    Støtte for sagaer
    Transport
    AsA_Client
    Nei
    Nei
    Ja
    Nei
    MSMQ
    AsA_Server
    Ja
    Ja
    Nei
    Ja
    MSMQ
  • 35. In-memory subscription storage:
    Er default
    Servere mister abonnementerved restart
    Kun for egnetvedutvikling/test!
    Konfigurasjon - Subscription storage
  • 36. MSMQ subscription storage storage:
    Abonnementerlagresi en egenkø
    Konfigurasjon - Subscription storage
  • 37. DB subscription storage
    Lagrerabonnementeri en database
    NHibernate ellerSQLite
    Automatiskgenereringav schema
    Børbrukesiproduksjonsmiljøet
    Konfigurasjon - Subscription storage
  • 38. DB subscription storage eksempelkonfigurasjon:
    Konfigurasjon - Subscription storage
  • 39. For Generic Host
    De innebygdeprofilene:
    Lite (default)
    Integration
    Production
    Konfigurasjon - Profiler
    Logging
    Subscription
    Saga persister
    Scale-out
    Lite
    Mye (Console)
    In-memory
    In-memory
    Nei
    Integration
    Mindre (Console)
    MSMQ
    SQLite
    Ja
    Production
    Lite/Custom (Fil)
    DB
    NHibernate
    Ja
  • 40. Konfigurasjon - Velge profil
  • 41. Implementere IProfile
    Konfigurasjon - Lag din egen profil
  • 42. Konfigurasjon - Tilpasse en profil
  • 43. Koordinererulikestegi en langtlevende, distribuertog persistent transaksjon
    Status lagresi en database
    Lignerpå workflow
    Men erikkedetsamme
    Erpå et høyerenivå
    Kan inneholde workflow og state machines
    Sagaer
  • 44. Definisjon av en saga:
    Sagaer - Eksempel
  • 45. Håndtering av en melding:
    Sagaer - Eksempel (forts)
  • 46. Kjøressom en egen service
    Har sin egenkø
    Brukestil å vekketil live sagaersomventerpå en melding for å forsette
    Eksempel:
    En ordresomaldriblirgodkjent
    Kan fekssendepåminnelseetter en uke
    Sagaer - Timeout Manager
  • 47. NServiceBus.Testing.Dll
    BrukerRhino.Mocks
    Enhetstesting
  • 48. Generic host
    Timeout manager
    Distibutor
    Gateway
    Proxy
    NServiceBus prosesser
  • 49. Distributor - Load balancing
    http://nservicebus.com
  • 50. Gateway
  • 51. Proxy
    http://nservicebus.com
  • 52. Proxy
    http://nservicebus.com
  • 53. NServiceBusleggerpåegendefinertmeldingshode
    Kan skapeproblemer for eksternekonsumenterav MSMQ-køen
    Interoperabilitet
  • 54. Selvemeldingener en standard MSMQ melding
    Interoperabilitet
  • 55. Integrasjon via:
    EgenNServiceBus service på BizTalk serveren
    Tar imotmeldingenog sender den videretil BizTalk
    MSMQ
    Custom BizTalk Adapter for NServiceBus
    BizTalk og NServiceBus
  • 56. NServiceBushar:
    Pub/sub støtte
    Innebygdstøtte for transaksjonerogfeilhåndtering
    Kombinere WCF med NServiceBus
    Bruksynkronogasynkronkommunikasjon alt etterhvasom passer
    WCF og NServiceBus
  • 57. BlirstøttetinesteversjonavNServiceBus
    KjøreNServiceBusinnenfori en Azure Worker Role
    Azuere queues
    Max 8KB meldingsstørrelse
    Kombinere med Azure Blob Storage for størremeldinger
    Håndteringavtransaksjoner
    For integrasjon mot eksterneapplikasjonerogpartnere
    Azure og NServiceBus
  • 58. NServiceBus 2.1
    Fokuspåpluggbarhet
    Støtte for Azure (fortsattpå et tidlig stadium)
    Målsetningom å slippe en nyversjonhver 6. måned
    Neste versjon
  • 59. Deployment 
    Myesommåkonfigureres
    Feilsøkingavtransaksjoner
    DTCPing
    NH Prof
    Oppfølgingavfeiliproduksjonsmiljøet
    Lageegneverktøyellerkjøpe?
    Kreverforståelse for messaging ogeventerhosutviklerene
    Ikkeundervurderkompleksiteten
    Vurderbehovet for skalerbarhet
    Antallsamtidigebrukere
    Tilgjengelighet, responstider
    Ingen golden hammer!
    Les kildekoden!
    Tips og erfaringer
  • 60. Publish/subscribe demo
  • 61. http://nservicebus.com
    UdiDahan sin blog: http://www.udidahan.com/
    NServiceBus SVN trunk
    Sagas vs. workflows
    SOA vs. EAI vs. ESB
    Integrating BizTalk Server and nServiceBus
    FormellbeskrivelseavSagaerfra 1987
    Hanselminutes Podcast 176 - NServiceBus with UdiDahan
    Deep Fried Bytes Episode 49: Getting the Right Message about NServiceBus with UdiDahan
    Referanser
  • 62. NServiceBus tutorials
    Eksempelprosjekter:
    ElegantCode Starbucks spike
    NYC Alt.Net demo application
    Azure integrasjon
    Stockholm Alt.Neteksempelav Andreas Öhlund
    NServiceBus diskusjonsgruppehos Yahoo Groups
    Ressurser
  • 63. Spørsmål?