monitoring api performance and delivering a scalable api solution

Post on 15-Jan-2015

1.088 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

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

Practical Guide to API Management Webinar Series

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/

Middleware for Scalable Solutions

Picture Credit : /http://www.london2012.com//

API Façade Pattern – cont..

External Format (Demand)

Façade

Mediation

Backend Services

API Façade Pattern – Generic Pattern

External Format (Demand)

Façade

Mediation

Backend Services

Façade + Mediation

API Façade Pattern – WSO2 recommended architecture

External Format (Demand)

Façade

Mediation

Backend Services

Façade

Mediation

API Façade Pattern – WSO2 Implementation

External Format (Demand)

Backend Services

Façade

Mediation

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

API Façade Pattern – WSO2 Implementation BIG PICTURE

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

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

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

Deployment Pattern : Minimum with internal store

Deployment Pattern : Minimum with external store

Deployment Pattern : Extend to scale

Deployment Pattern : as an internal API solution

Data to Scale : API Statistics

Picture Credit : http://www.mta.info/

WSO2 BAM Workshop : Palo Alto

More Info

Corporate website: http://wso2.com

Solution Architecture Blog: http://wso2.com/blogs/architecture/

Business development team: bizdev@wso2.com

Asanka Abeysinghe

Blog : http://asanka.abeysinghe.org

Twitter : @asankama

Tharindu Mathew

Blog : http://tharindumathew.com/

Twitter : @mccloud35

21

lean . enterprise . middleware

Monitoring API Performance and Delivering a

Scalable API Solution

The feedback cycle

Gather API data

Slice and Dice

Decide

Adjust parameters

Recap

• Monitoring stats available - http://bit.ly/SFepPt

• Usage data such as number of hits, subscriptions, access time already

gathered

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

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

Decide

Decide (cont.)

• Check for trends

• Compare past resutls

• Get help with Reporting & Dashboards

Adjust parameters

Adjust parameters (cont.)

• Increase server capacity

• Increase redundancy

• Retire APIs

• Introduce new versions

Summary

• Create an effective feedback cycle

• Get proper alerts and dashboards in place

• Tune your APIs for maximum performance

Q & A

top related