Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Integration on windows azure

4,445 views

Published on

My presentation at WAZUGNL on AppFabric service bus enhancements. Demo's can be found at http://blog.codit.eu

Published in: Education
  • Be the first to comment

Integration on windows azure

  1. 1. integration on windows azure<br />Windows Azure User Group NL<br />May 26 – 2011 – Amstelveen<br />
  2. 2. about me<br />Sam Vanhoutte<br />@samvanhoutte<br />architect at Codit<br />blog.codit.eu<br />codit: business integration<br />BizTalk, WCF, WF, AppFabric<br />hybrid connectivity with windows azure<br />2<br />
  3. 3. integration<br />hybrid connectivity<br />hybrid connectivity with windows azure<br />3<br />
  4. 4. hybrid architecture<br />hybrid connectivity with windows azure<br />4<br />Windows Azure <br />File<br />EDI<br />Business Partner<br />AS/2 - FTP<br />Saas<br />(timesheets, HRM…)<br />Web services<br />Enterprise<br />
  5. 5. integration roadmap<br />hybrid connectivity with windows azure<br />5<br /> Caching<br /> Service Bus/<br /> Messaging<br /> Access Control<br /> Integration<br /> Composite App <br /> [Workflow, Web Services]<br />AppFabric Services<br />.NET + AppFabric Composition Model & Tools<br />AppFabric Management<br />AppFabric Container<br />SQL Azure<br />SQL Server<br />Windows Azure<br />Windows Server<br />
  6. 6. Integration<br />Routing<br />Coordination<br />Transformation<br />Service Management Naming, Discovery<br />Monitoring<br />Messaging<br />Queuing<br />Pub/Sub<br />Reliable Transfer<br />Connectivity<br />Service Relay<br />Protocol Tunnel<br />Eventing, Push<br />?<br />Rich options for interconnecting apps across network boundaries<br />Reliable, transaction-aware cloud messaging infrastructure for business apps.<br />Consistent, modeling-friendly management surface and service virtualization capabilities<br />Rich, declarative content-based routing, document transformation, and process coordination.<br />new set of capabilities<br />
  7. 7. Getting here…<br />Application Services<br />DevelopmentModel<br />.NET <br />Services Platform<br />Connectivity & Messaging<br />Identity & Access<br />Frameworks<br />(+ Composition Model/Tools)<br />ServerPlatform<br />Web Services/Workflows<br />Caching<br />Integration<br />hybrid connectivity with windows azure<br />7<br />
  8. 8. hybrid connectivity<br />hybrid connectivity with windows azure<br />8<br />Secure network connectivity between on-premises and cloud<br />Firewall-friendly service communication and messaging<br />Data synchronization between on-premise and cloud databases<br />Network<br />Service endpoints<br />Data<br />
  9. 9. Introducing AppFabric v2<br />messaging through the cloud<br />hybrid connectivity with windows azure<br />9<br />
  10. 10. queues<br />hybrid connectivity with windows azure<br />10<br />Reliable, durable storage – up to 1GB per Queue (100Mb in CTP)<br />Queues stay in the system once created, no TTL limit<br />Max message size 256KB, Sessions allow grouping<br />Messaging API, WCF, and HTTP/REST Interfaces<br />Advanced messaging capabilities<br />Consumer<br />Consumer<br />publisher<br />queue<br />Consumer<br />
  11. 11. sessions<br />Creating session-full queuenew QueueDescription {RequiresSession = true};<br />Defining session, when sending message message.SessionId = sessionId;<br />Receiving messages from session<br />SessionReceiver rcv = queueClient.AcceptSessionReceiver ("MySession", ReceiveMode.PeekLock, newTimeSpan(0,0,10));<br />Session session = rcv.Session; <br />hybrid connectivity with windows azure<br />11<br />
  12. 12. topics & subscriptions<br />hybrid connectivity with windows azure<br />12<br />All the Features of Queues + Publish/Subscribe<br />Up to 2000 Subscriptions on a Topic<br />Each Subscription is a virtual queue getting message copies<br />Subscriptions can have filters and actions<br />Receiver<br />Receiver<br />publisher<br />topic<br />rules &<br />filters<br />Receiver<br />subscriptions<br />
  13. 13. filters & actions<br />Filter conditions operate on message properties and are expressed in SQL’92 syntax <br />InvoiceTotal > 10000.00 OR ClientRating <3<br />ShipDestCtry = ‘USA’ AND ShipDestState=‘WA’<br />LastName LIKE ‘V%’<br />Filters actions may modify/add/remove properties as message is selected<br />SET AuditRequired = 1<br />hybrid connectivity with windows azure<br />13<br />
  14. 14. runtime API choices<br />Apps<br />HTTPREST<br />SOAP WS-*(Relay Clients)<br />Messaging API<br />WCF Service Model<br />WCF Bindings<br />Service Bus Relay Protocol Implementation(private)<br />.NET Framework 4.0<br />Any Platform<br />Service Bus<br />
  15. 15. messagingfactory<br />15<br />MessagingFactory<br />Connection Manager (private)<br />create clients for sending/receiving messages<br />factory creates entity-specific “client”<br />QueueClient, TopicClient, SubscriptionClient<br />clients create send and receive objects<br />MessageSender, MessageReceiver, SessionReceiver<br />QueueClient<br />SubscriptionClient<br />TopicClient<br />MessageSender<br />MessageReceiver<br />SessionReceiver<br />
  16. 16. the BrokeredMessageclass<br />message body (content) <br />can be generic (untyped) <br />can be serialized (using generic class) object<br />can be empty (properties only – typical for triggers)<br />message properties (context)<br />used for routing/filtering and metadata<br />contains session, correlation and message id information<br />hybrid connectivity with windows azure<br />16<br />
  17. 17. WCF Experience<br />ServiceBusMessagingBinding<br />One-Way Messaging<br />Automatic Pump – Pull/Push Translation<br />IInputChannel, IOutputChannel, IInputSessionChannel<br />Transport-Level Security<br />ServiceBusMessagingFactorySettings available for tweaking as binding properties<br />BrokeredMessage available as a message property of the WCF message on receive<br />17<br />Application / Dispatcher<br />Service Bus Transport <br />Channel<br />.Net API<br />SOAP over <br />SBMP<br />
  18. 18. demo-time<br /><ul><li>service bus tracer
  19. 19. transactions
  20. 20. sessions (large messaging)
  21. 21. duplicate checks
  22. 22. pub/sub demo</li></ul>hybrid connectivity with windows azure<br />18<br />
  23. 23. thank you<br />sam vanhoutte<br />sam.vanhoutte@codit.eu<br />hybrid connectivity with windows azure<br />19<br />

×