OW2con'14- erOCCI, a scalable, model-based REST API framework
Monitoring API Performance and Delivering a Scalable API Solution
description
Transcript of Monitoring API Performance and Delivering a Scalable API Solution
![Page 1: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/1.jpg)
WSO2 Practical Guide to API Management Webinar
Monitoring API Performance and Delivering
Scalable API Solutions
© WSO2 2012. Not for redistribution. Commercial in Confidence.
Asanka Abeysinghe - Director, Solutions Architecture, WSO2
Tharindu Mathew - Associate Technical Lead, WSO2
![Page 2: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/2.jpg)
Practical Guide to API Management Webinar Series
![Page 3: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/3.jpg)
Requirement for Scalable API Solutions - Architecture
- (ONLY) Business functionality execution point
- Business (functionality) as a Service
- High business demand
- Subscription model
- Unknown consumers / Applications
- Unknown usage
- SLAs (Service Level Agreements)
- Market driven usage patterns
Picture Credit : http://london2012.photos.usatoday.com/
![Page 4: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/4.jpg)
Middleware for Scalable Solutions
Picture Credit : /http://www.london2012.com//
![Page 5: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/5.jpg)
API Façade Pattern – cont..
External Format (Demand)
Façade
Mediation
Backend Services
![Page 6: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/6.jpg)
API Façade Pattern – Generic Pattern
External Format (Demand)
Façade
Mediation
Backend Services
Façade + Mediation
![Page 7: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/7.jpg)
API Façade Pattern – WSO2 recommended architecture
External Format (Demand)
Façade
Mediation
Backend Services
Façade
Mediation
![Page 8: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/8.jpg)
API Façade Pattern – WSO2 Implementation
External Format (Demand)
Backend Services
Façade
Mediation
![Page 9: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/9.jpg)
Oth
er
Serv
ice
Conta
iners
Ext API
(Demand)
API Façade
Mediation /
Service Virtualization /
Orchestration
Service
Platforms
API Façade Pattern – WSO2 Implementation extended
![Page 10: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/10.jpg)
API Façade Pattern – WSO2 Implementation BIG PICTURE
![Page 11: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/11.jpg)
API Management Platform Layered Architecture
- Invoke the API: API Gateway
- Secure : API Auth Server
- Look-up, Subscribe : API Store
- Govern, LCM : API Publisher
- Monitor : API Analytics Platform
![Page 12: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/12.jpg)
API Gateway
API Store
API Publisher
API Auth Server
API Analytics
Platform
RDBMS
(G-Reg +Analytics)2.0
BAM-2.0 Data Collector
BAM-2.0 Analytics + Dashboard
BAM-2.0 Data Store
Load Balancer
Ext LB
Ext
Analytics2.0
WSO2 API Manager Platform – Component Architecture
Ext Auth
![Page 13: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/13.jpg)
Capacity Planning – Facts Matrix
Component Capacity Planning Guidelines
API Gateway Peak load of the API calls
Auth Server Peak load of the API calls
API Store Peak load of the subscriptions and browsing
API Publisher Peak load of the API publishing and LCM tasks
Analytics System load of the API calls
![Page 14: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/14.jpg)
Deployment Pattern : Minimum with internal store
![Page 15: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/15.jpg)
Deployment Pattern : Minimum with external store
![Page 16: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/16.jpg)
Deployment Pattern : Extend to scale
![Page 17: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/17.jpg)
Deployment Pattern : as an internal API solution
![Page 18: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/18.jpg)
Data to Scale : API Statistics
Picture Credit : http://www.mta.info/
![Page 19: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/19.jpg)
WSO2 BAM Workshop : Palo Alto
![Page 20: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/20.jpg)
More Info
Corporate website: http://wso2.com
Solution Architecture Blog: http://wso2.com/blogs/architecture/
Business development team: [email protected]
Asanka Abeysinghe
Blog : http://asanka.abeysinghe.org
Twitter : @asankama
Tharindu Mathew
Blog : http://tharindumathew.com/
Twitter : @mccloud35
![Page 21: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/21.jpg)
21
lean . enterprise . middleware
![Page 22: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/22.jpg)
Monitoring API Performance and Delivering a
Scalable API Solution
![Page 23: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/23.jpg)
The feedback cycle
Gather API data
Slice and Dice
Decide
Adjust parameters
![Page 24: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/24.jpg)
Recap
• Monitoring stats available - http://bit.ly/SFepPt
• Usage data such as number of hits, subscriptions, access time already
gathered
![Page 25: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/25.jpg)
Gathering API data
• What if you want custom data off of API requests?
• Plug-in a monitoring extension – mediator
• Net total of each order – total=259
API Manager
BAM
![Page 26: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/26.jpg)
Slice and Dice
• Customers who have placed orders above 2 mil USD
• Select customer_name, sum(order_amount) from Orders groupby
customer_name
Customer_name Sum(order_amount)
Coyote 2,332,223
Acme 10,654,333
![Page 27: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/27.jpg)
Decide
![Page 28: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/28.jpg)
Decide (cont.)
• Check for trends
• Compare past resutls
• Get help with Reporting & Dashboards
![Page 29: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/29.jpg)
Adjust parameters
![Page 30: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/30.jpg)
Adjust parameters (cont.)
• Increase server capacity
• Increase redundancy
• Retire APIs
• Introduce new versions
![Page 31: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/31.jpg)
Summary
• Create an effective feedback cycle
• Get proper alerts and dashboards in place
• Tune your APIs for maximum performance
![Page 32: Monitoring API Performance and Delivering a Scalable API Solution](https://reader033.fdocuments.us/reader033/viewer/2022050920/54b6cc574a79593a378b4594/html5/thumbnails/32.jpg)
Q & A