Successfully reported this slideshow.

Building Event Driven Integration Architectures

7

Share

1 of 31
1 of 31

More Related Content

Related Books

Free with a 30 day trial from Scribd

See all

Building Event Driven Integration Architectures

  1. 1. Building Event-Driven Integration Architectures Dan Toomey @daniel2me
  2. 2. Who am I? • Principal Consultant, Mexia • Microsoft Azure MVP • MCSE, MCT, MCPD, MCTS BizTalk & Azure • Pluralsight Author • www.mindovermessaging.com • @daniel2me
  3. 3. What is an Event? http://www.news.com.au
  4. 4. Types of Events https://www.biztalk360.com/integrate-2018-resources/eventing-serverless-and-the-extensible-enterprise/ Discrete Independent Report state change Actionable Series Time based Context partitioned Report condition Analyzable
  5. 5. Event Driven vs. Event Sourcing https://martinfowler.com/articles/201701-event-driven.html Event Notification Broadcast state changes No expectation from consumer Decoupled logic Event Sourcing Persist state changes Auditability Replay capability
  6. 6. Why event-driven integration?
  7. 7. Why event-driven integration?
  8. 8. Why event-driven integration?
  9. 9. Why event-driven integration?
  10. 10. Messaging Models
  11. 11. Messaging Models Telephone/Website • Synchronous • Need information immediately Order • Asynchronous • Takes time to complete a task; CQRS Subscription • Publish / Subscribe • Decoupling; flexibility; extensibility; scalability
  12. 12. Messaging vs. Eventing https://www.biztalk360.com/integrate-2018-resources/eventing-serverless-and-the-extensible-enterprise/ Messaging - INTENTS Expectations Conversations Contracts Control Transfer Value Transfer Eventing - FACTS History Context Order Schema
  13. 13. Communication Patterns https://www.biztalk360.com/integrate-2018-resources/eventing-serverless-and-the-extensible-enterprise/
  14. 14. https://cloudevents.io/ Serverless Working Group https://github.com/cloudevents/spec CNCF CloudEvents
  15. 15. CNCF CloudEvents { "cloudEventsVersion" : "0.1", "eventType" : "com.example.someevent", "source" : "/mycontext", "eventID" : "A234-1234-1234", "eventTime" : "2018-04-05T17:31:00Z", "extensions" : { "comExampleExtension" : "value" }, "contentType" : "text/xml", "data" : "<much wow="xml"/>" }
  16. 16. Example: Logging Event Publication
  17. 17. Example: Logging Event Publication (Series)
  18. 18. Example eventing platforms
  19. 19. Apache Kafka Image from https://kafka.apache.org/intro
  20. 20. Amazon Kinesis Image from https://aws.amazon.com/kinesis/data-streams/getting-started/
  21. 21. Solace
  22. 22. Azure Event Hubs Image from https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-about
  23. 23. Azure Event Grid
  24. 24. Product Comparison Kafka Kinesis Solace Event Hubs Event Grid Cloud / On-Prem Both Cloud Only Both Cloud Only Cloud Only Managed Service      Auto-Scaling     Replay      Event Sourcing    *  Integrations Kafka AWS services Open Source connectors available Azure services, Kafka Azure services, anything via HTTP/Webhooks Protocols Kafka HTTP HTTP, AMQP,MQTT, JMS, Web Sockets, Native HTTP, AMQP, Kafka HTTP Open Source   Closed source, but open protocol   Max Message Size No Limit 1MB No Limit 256K 64K *via archiving
  25. 25. Storage Blob Event Grid Webhook Webhook Storage Event Subscription ext = *.jpg Subscription ext = *.pdf
  26. 26. Microsoft Azure Resource Group Event Grid Azure Function Logic App Virtual machine Storage table Outlook Connector Azure Function Administrator
  27. 27. References https://thenewstack.io/need-event-driven-integration/ https://azure.microsoft.com/en-us/blog/events-data-points-and-messages-choosing-the-right-azure-messaging-service-for-your-data/ https://www.biztalk360.com/integrate-2018-resources/eventing-serverless-and-the-extensible-enterprise/ https://martinfowler.com/articles/201701-event-driven.html https://cloudevents.io/ https://github.com/cloudevents/spec/blob/master/spec.md https://docs.microsoft.com/en-us/azure/event-grid/cloudevents-schema https://azure.microsoft.com/en-au/blog/announcing-first-class-support-for-cloudevents-on-azure/
  28. 28. Questions? enquiries@mexia.com.au https://blog.mexia.com.au
  29. 29. Let’s connect! dan@mexia.com.au @daniel2me linkedin.com/in/danieltoomey mindovermessaging.com

×