Event Driven Reference Architecture 
October 28, 2014 
John Mathon 
VP, Enterprise Product Strategy and Evangelism 
Twitter:@john_mathon blog: CloudRamblings
Origin - I was building one of the first distributed 
network computers 
“How do you share information between users and applications in a networked world?” 
Platform 1.0 Platform 2.0
Publish/Subscribe Dream 
Joe Exchange Mary Clearing Frank 
This was the answer and we started TIBCO 
Subject 
Filter 
Subject 
Filter 
Subject 
Filter 
Subject 
Filter 
Subject 
Filter
Advantages of Publish/Subscribe 
Event Driven Programming 
• Everything becomes dynamic and easier to change 
• Much faster when more than one subscriber 
• Simplified Programming 
private void sendGetRequest(Dart.Snmp.ManagerSlave slave, object state) 
{ try { GetMessage request 
= new GetMessage(); request.Community 
= "public"; request.Version 
= SnmpVersion.One; request.Variables.Add(state as Variable); Re 
sponseMessage response = slave.GetResponse(request, 
myAgentAddress); manager1.Marshal(new ResponseMessage[] { 
response 
}, "", null); } catch (Exception ex) { manager1.Marshal(ex); }} 
subscribe(“snmp.george”, &handle_snmp)
BO 
Port 
Risk 
Trading 
Pricing 
Reconcile 
TIBCO grew to 300 million 
Dollars in 10 years with this 
Simple message: 
Get on the Bus
What Point-to-Point looks like after a while 
Extremely Brittle 
Extremely NON-AGILE
This Architecture is a lot easier to change 
AppC 
AppB 
AppA 
ServerA 
ServerB 
ServerC
My dream: What if the cloud was Publish/Subscribe? 
Web Site 
A 
The Cloud 
Search A 
Traffic 
Data 
GPS info 
Yelp Mapping
Alternative EDA – Google - Polling has delays 
Web Site 
A 
The Cloud 
Search 
Indexed Site A 
For Google it can still be a month before you are indexed
The Common EDA Pattern - 
Hub and Spoke 
Message 
Broker 
ServerA 
AppC 
ServerB 
ServerC 
AppA AppB
EDA spurred a set of standard tools 
Platform 2.0 Distributed 
The 
Bus 
Mediation/E 
SB 
Activity 
Monitor 
Message 
Broker 
Business 
Process Data 
Pattern Detection 
Complex Event Processing 
Services Registry 
Discovery
Logical Completeness 
Dimensionality 
X: Stateful or not 
Y: batch or real time 
Z: low change or high change 
X’: Long or short running
Platform 3.0 
The Connected World 
• Mobile – 1.5 Billion Smartphones 
– 600,000 Mobile Apps 
• IoT – Billions of devices 
• Social – Billions of users 
• APIs – 100 Billion API Calls/Minute 
• Devops / PaaS – deliver new software daily 
• Cloud – IaaS, PaaS, SaaS, iPaaS, CaaS, BaaS, DaaS - 
$130 billion and growing fast
Technology is in Rapid Evolution 
20,000 Public/80,000 Private APIs 
100 Billion API calls/minute 
Projects doubling 
Every 18 months 
1.5 Billion Smartphones 
$100 Billion IaaS, PaaS, SaaS, iPaaS, BaaS, DaaS, … 
Billions of Users
What is needed is a glue for NEW and OLD 
technology 
Social API/App 
Store 
API 
Management 
Cassandra 
/Hbase/M 
ongo
Platform 2.0 
EDA Components 
Mediation/ESB 
Data 
Services 
RDB 
Message 
Broker 
Business 
Process 
Complex Event Processor 
Activity 
Monitor 
User 
Experience 
Gov Registry
Platform 3.0 
+API Management, BIG Data, Cloud, Social, Mobile, Security 
everywhere 
Mediation/ESB + 
APIs + Cloud 
Adapters Social 
Data 
Services 
RDB + 
BigData 
Message 
Broker + 
BigData 
Business 
Process 
Complex Event Processor + 
BigData 
Activity 
Monitor 
+ 
SOCIAL 
BIGDATA 
User 
Experience 
IN THE 
CLOUD Gov Registry 
+ Social 
Enterprise 
Store + 
Mobile Mgt 
API Management 
Identity Management 
Paas / SaaS / DevOps 
Cloud Integration 
IOT
Case Study: Ufer Taxis 
Uber User 
App 
Uber Driver 
App 
United 
Airline 
Mobile App 
Meetup 
Mobile App 
Mediation/E 
SB 
Business 
Processes 
DSS to RDB 
Message 
Broker 
Payments 
Square / 
Activity Zuora … 
Monitor 
DSS Big Data 
Activity Log 
API and App 
Store 
Driver Onboard 
Driver Rating 
Customer Onboard 
Driver Interaction 
Driver Selection 
Driver Payments 
Customer Payments 
Avail Query 
Analytics 
Peak Demand Pricing 
Dispute Handling 
City Configuration 
Reserve Service 
Monitor Service
WSO2 “Platform 3.0” Connected Enterprise 
Architecture Gives you: 
WSO2 Advantage: 
75 % of your service is 
already written and 
integrated with the latest 
new technology from 
BigData, Cloud, Social, APIs 
• Event Driven everywhere respond instantly 
• Legacy Integration and renewal 
• APIs instantly, managed and scalable 
• Cloud Architecture and Deployment Flexibility and Speed 
• Big Data Everywhere 
• Easy Integration to Social 
• Export APIs 
• Easy Integration to payments, social, gps 
is scalable and secure
Exponential Value - 100 Billion API Calls/Minute 
Uninteresting App if it doesn’t use the Cloud 
Drone 
Tesla Glucose 
Waze Uber Yelp 
Smartphone1 
In a car 
Smartphone2 
In a restaurant 
Medical 
Monitor 
Service 
Smartphone4 
On the street 
Smartphone3 
In a taxi 
Monitor 
GPS 
Emergency 
Vehicle 
Search 
United 
Airlines
IoT Protocols 
• MQTT 
• CoAp 
• Zigbee 
• Z-Wave 
• All these protocols implement publish / subscribe 
paradigm
Smartphone1 
outside 
Smartphone2 
At Home 
Light 
Switch 
Fire Alarm 
Drone 
Heart 
Rate 
Monitor 
Infrared 
Detector 
Light 
Switch 
Myo Gesture 
Detector 
Gas Valve 
Control 
In Home 
IoT Hub 
Heat 
Control 
Tile 
Cloud 
Publish/Subscribe coming back 
In Spades in IoT 
IoT: the power of Publish/Subscribe
About the Author 
• 10 patents, publish / subscribe, multipath low latency 
high reliability messaging, Content management in 
file systems, peer to peer messaging over WAN… 
others 
• founder and CTO of TIBCO 
• WSO2 Enterprise Product Strategy and Evangelism 
• Twitter: @john_mathon 
• Blog: CloudRamblings johnmathon.wordpress.com
SUMMARY 
• PUBSUB instrumental in the origination of platform 
2.0 and distributed EDA 
• PUBSUB as relevant in the Platform 3.0 Mobile Social 
Cloud API BigData IoT World 
• PUBSUB is the preferred way to create the Connected 
Enterprise / Connected World 
• WSO2 has the broadest integrated platform 3.0

Wso2 con 2014 event driven architecture Publish/Subscribe Pubsub

  • 1.
    Event Driven ReferenceArchitecture October 28, 2014 John Mathon VP, Enterprise Product Strategy and Evangelism Twitter:@john_mathon blog: CloudRamblings
  • 2.
    Origin - Iwas building one of the first distributed network computers “How do you share information between users and applications in a networked world?” Platform 1.0 Platform 2.0
  • 3.
    Publish/Subscribe Dream JoeExchange Mary Clearing Frank This was the answer and we started TIBCO Subject Filter Subject Filter Subject Filter Subject Filter Subject Filter
  • 4.
    Advantages of Publish/Subscribe Event Driven Programming • Everything becomes dynamic and easier to change • Much faster when more than one subscriber • Simplified Programming private void sendGetRequest(Dart.Snmp.ManagerSlave slave, object state) { try { GetMessage request = new GetMessage(); request.Community = "public"; request.Version = SnmpVersion.One; request.Variables.Add(state as Variable); Re sponseMessage response = slave.GetResponse(request, myAgentAddress); manager1.Marshal(new ResponseMessage[] { response }, "", null); } catch (Exception ex) { manager1.Marshal(ex); }} subscribe(“snmp.george”, &handle_snmp)
  • 5.
    BO Port Risk Trading Pricing Reconcile TIBCO grew to 300 million Dollars in 10 years with this Simple message: Get on the Bus
  • 6.
    What Point-to-Point lookslike after a while Extremely Brittle Extremely NON-AGILE
  • 7.
    This Architecture isa lot easier to change AppC AppB AppA ServerA ServerB ServerC
  • 8.
    My dream: Whatif the cloud was Publish/Subscribe? Web Site A The Cloud Search A Traffic Data GPS info Yelp Mapping
  • 9.
    Alternative EDA –Google - Polling has delays Web Site A The Cloud Search Indexed Site A For Google it can still be a month before you are indexed
  • 10.
    The Common EDAPattern - Hub and Spoke Message Broker ServerA AppC ServerB ServerC AppA AppB
  • 11.
    EDA spurred aset of standard tools Platform 2.0 Distributed The Bus Mediation/E SB Activity Monitor Message Broker Business Process Data Pattern Detection Complex Event Processing Services Registry Discovery
  • 12.
    Logical Completeness Dimensionality X: Stateful or not Y: batch or real time Z: low change or high change X’: Long or short running
  • 13.
    Platform 3.0 TheConnected World • Mobile – 1.5 Billion Smartphones – 600,000 Mobile Apps • IoT – Billions of devices • Social – Billions of users • APIs – 100 Billion API Calls/Minute • Devops / PaaS – deliver new software daily • Cloud – IaaS, PaaS, SaaS, iPaaS, CaaS, BaaS, DaaS - $130 billion and growing fast
  • 14.
    Technology is inRapid Evolution 20,000 Public/80,000 Private APIs 100 Billion API calls/minute Projects doubling Every 18 months 1.5 Billion Smartphones $100 Billion IaaS, PaaS, SaaS, iPaaS, BaaS, DaaS, … Billions of Users
  • 15.
    What is neededis a glue for NEW and OLD technology Social API/App Store API Management Cassandra /Hbase/M ongo
  • 16.
    Platform 2.0 EDAComponents Mediation/ESB Data Services RDB Message Broker Business Process Complex Event Processor Activity Monitor User Experience Gov Registry
  • 17.
    Platform 3.0 +APIManagement, BIG Data, Cloud, Social, Mobile, Security everywhere Mediation/ESB + APIs + Cloud Adapters Social Data Services RDB + BigData Message Broker + BigData Business Process Complex Event Processor + BigData Activity Monitor + SOCIAL BIGDATA User Experience IN THE CLOUD Gov Registry + Social Enterprise Store + Mobile Mgt API Management Identity Management Paas / SaaS / DevOps Cloud Integration IOT
  • 18.
    Case Study: UferTaxis Uber User App Uber Driver App United Airline Mobile App Meetup Mobile App Mediation/E SB Business Processes DSS to RDB Message Broker Payments Square / Activity Zuora … Monitor DSS Big Data Activity Log API and App Store Driver Onboard Driver Rating Customer Onboard Driver Interaction Driver Selection Driver Payments Customer Payments Avail Query Analytics Peak Demand Pricing Dispute Handling City Configuration Reserve Service Monitor Service
  • 19.
    WSO2 “Platform 3.0”Connected Enterprise Architecture Gives you: WSO2 Advantage: 75 % of your service is already written and integrated with the latest new technology from BigData, Cloud, Social, APIs • Event Driven everywhere respond instantly • Legacy Integration and renewal • APIs instantly, managed and scalable • Cloud Architecture and Deployment Flexibility and Speed • Big Data Everywhere • Easy Integration to Social • Export APIs • Easy Integration to payments, social, gps is scalable and secure
  • 20.
    Exponential Value -100 Billion API Calls/Minute Uninteresting App if it doesn’t use the Cloud Drone Tesla Glucose Waze Uber Yelp Smartphone1 In a car Smartphone2 In a restaurant Medical Monitor Service Smartphone4 On the street Smartphone3 In a taxi Monitor GPS Emergency Vehicle Search United Airlines
  • 21.
    IoT Protocols •MQTT • CoAp • Zigbee • Z-Wave • All these protocols implement publish / subscribe paradigm
  • 22.
    Smartphone1 outside Smartphone2 At Home Light Switch Fire Alarm Drone Heart Rate Monitor Infrared Detector Light Switch Myo Gesture Detector Gas Valve Control In Home IoT Hub Heat Control Tile Cloud Publish/Subscribe coming back In Spades in IoT IoT: the power of Publish/Subscribe
  • 23.
    About the Author • 10 patents, publish / subscribe, multipath low latency high reliability messaging, Content management in file systems, peer to peer messaging over WAN… others • founder and CTO of TIBCO • WSO2 Enterprise Product Strategy and Evangelism • Twitter: @john_mathon • Blog: CloudRamblings johnmathon.wordpress.com
  • 24.
    SUMMARY • PUBSUBinstrumental in the origination of platform 2.0 and distributed EDA • PUBSUB as relevant in the Platform 3.0 Mobile Social Cloud API BigData IoT World • PUBSUB is the preferred way to create the Connected Enterprise / Connected World • WSO2 has the broadest integrated platform 3.0

Editor's Notes

  • #11 Possible missed data at Client if not polled between state changes Reliability burden put on the client – if data is not polled before you go down Loss of network bandwidth and cpu efficiency as many polls produce no new results Not aware of new clients unless informed / they also have to know about you to tell you Stateless i low cost puts the burden largely on the server Exponential behavior as the number of servers grows Potentially long but known latency of polling interval / staleness of data
  • #17 Super glue, fast drying Speak to slide 3 Emphasize bringing old
  • #18 Immediately people saw the next steps: Data integration – storage (DSS) Calculation Engine / Business activity – in the financial world this was super important (BAM) Integration (Mediation) Visualization (Mashups and User Experience) Complex Event Processing (CEP) Business Processes (BPS) Transactional semantics (MB)
  • #19 Immediately people saw the next steps: Data integration – storage (DSS) Calculation Engine / Business activity – in the financial world this was super important (BAM) Integration (Mediation) Visualization (Mashups and User Experience) Complex Event Processing (CEP) Business Processes (BPS) Transactional semantics (MB)
  • #20 Mediation / iPaaS – handle variations on application, different interfaces and different APIs, different payment processing providers different countries Activity monitor can monitor individual drivers as well as overall traffic and identify peak traffic scenarios Message broker insures reliable delivery of messages Business process makes it easy to graphically describe processes and change them