Top Banner
API Management Making your API behave like a big boy Andrew Siemer | Clear Measure [email protected] @asiemer
33
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Making your API behave like a big boy

API Management

Making your API behave

like a big boy

Andrew Siemer | Clear Measure

[email protected]

@asiemer

Page 2: Making your API behave like a big boy

Welcome to Azure Austin

All things related to the Microsoft Cloud!

meetup.com/AzureAustin

Page 3: Making your API behave like a big boy

Clear Measure Workshops

Day long, Clear Measure led, fingers on keyboards, learn by doing

CQRS, DDD, Event Sourcing, Distributed Systems, Micro Services

meetup.com/clear-measure-workshop

Page 4: Making your API behave like a big boy

Andrew Siemerhttp://about.me/andrewsiemer

ASP InsiderMS v-TSP (Azure)

Azure Advisor ProgramFather of 6. Jack of all trades, master of some.

Page 5: Making your API behave like a big boy
Page 6: Making your API behave like a big boy

• Stories from the programming trenches

• How to grow your programming career

• http://www.developerspringboard.com

• @devspringboard

Page 7: Making your API behave like a big boy

We are hiring!!!

Page 8: Making your API behave like a big boy

Introduction

What is an API management tool and why do I need it?

Page 9: Making your API behave like a big boy

More details here!

• Andrew Siemer on LosTechies

• “making your api behave like the big boys”

• http://goo.gl/DTQIGu

Page 10: Making your API behave like a big boy

Topics to cover

• Downside of directly exposing your API

• Introducing Proxy’s & Gateways

• Features you need to know about

• Available tools

• Azure API Management

Page 11: Making your API behave like a big boy

Downside of direct access

• Flexibility in deployment story

• Versioning is harder, and in code

• Security, Authentication, Authorization in code

• Cohesive API forces single solution (mega code base)• Not micro-service friendly

• Basically, you need it? You write it!

Page 12: Making your API behave like a big boy

Proxy’s and Gateways

• Proxy• Thin pass through

• Expects something on the other end to respond

• Gateway• Thick pass through

• Exposes mega feature list

Page 13: Making your API behave like a big boy

Features available in managed API

• Acceleration

• Routing

• URL Rewriting

• Versioning

• Cohesion

• Rate Limiting & Throttling

• Security

• Server Affinity

• Monitoring

• A/B Testing

• Blue/Green Deployments

Page 14: Making your API behave like a big boy

Tools – Proxy’s

• Nginx

• HAProxy

• httpd

Page 15: Making your API behave like a big boy

Tools – Proxy’s – Which one?

Page 16: Making your API behave like a big boy

Tools – Proxy’s – Which one?

• nginx

Page 17: Making your API behave like a big boy

Tools – Proxy’s – Which one?

• haproxy

Page 18: Making your API behave like a big boy

Tools – Proxy’s – Which one?

• httpd

Page 19: Making your API behave like a big boy

Tools – Proxy’s – Which one?

• Pick by features

• All are mature and well supported

• Nginx is clear popularity winner

Page 20: Making your API behave like a big boy

Living in a Microsoft world?

• Application Request Routing (ARR)

• Snaps in to IIS

• Familiar UI• UI!!! Not command line!

• Configuration documents• XML

Page 21: Making your API behave like a big boy

ARR

Page 22: Making your API behave like a big boy

ARR

Page 23: Making your API behave like a big boy

Azure API Management

Page 24: Making your API behave like a big boy

Demo API – MS CalcAPI

• Great Azure Friday videos on API Management• http://channel9.msdn.com/Shows/Azure-Friday/

• Using Postman or similar you can tinker• http://calcapi.cloudapp.net/calcapi.json

• http://calcapi.cloudapp.net/api/add?a=2&b=3

• http://calcapi.cloudapp.net/api/sub?a=2&b=1

Page 25: Making your API behave like a big boy

Plug the API into the manager

Page 26: Making your API behave like a big boy

Take advantage of the magic: operations

• Adding operations enables built in tools

Page 27: Making your API behave like a big boy

“Products”

• You have to add your API to your products

Page 28: Making your API behave like a big boy

Now subscribe to the Product

• Users have to subscribe to products, to get access to API’s• Administrators are auto subscribed

Page 29: Making your API behave like a big boy

Developer Portal

• We can test our api from the developer portal

• Upper right of admin panel

Page 30: Making your API behave like a big boy

Developer Portal

Page 31: Making your API behave like a big boy

Code Generation

Page 32: Making your API behave like a big boy

Console for testing

Page 33: Making your API behave like a big boy

Questions?

Andrew Siemer - Clear Measure

[email protected]

(512) 387-1976

@asiemer