API Management
Making your API behave
like a big boy
Andrew Siemer | Clear Measure
andrew@clear-measure.com
@asiemer
Welcome to
Azure Austin
All things related to the Microsoft Cloud!
meetup.com/AzureAustin
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
Andrew Siemer
http://about.me/andrewsiemer
ASP Insider
MS v-TSP (Azure)
Azure Advisor Program
Father of 6. Jack of all trades, master of some.
• Stories from the programming trenches
• How to grow your programming career
• http://www.developerspringboard.com
• @devspringboard
 We are hiring!!!
Introduction
What is an API management tool and why
do I need it?
More details here!
• Andrew Siemer on LosTechies
• “making your api behave like the big boys”
• http://goo.gl/DTQIGu
Topics to cover
• Downside of directly exposing your API
• Introducing Proxy’s & Gateways
• Features you need to know about
• Available tools
• Azure API Management
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!
Proxy’s and Gateways
• Proxy
• Thin pass through
• Expects something on the other end to respond
• Gateway
• Thick pass through
• Exposes mega feature list
Features available in managed API
• Acceleration
• Routing
• URL Rewriting
• Versioning
• Cohesion
• Rate Limiting & Throttling
• Security
• Server Affinity
• Monitoring
• A/B Testing
• Blue/Green Deployments
Tools – Proxy’s
• Nginx
• HAProxy
• httpd
Tools – Proxy’s – Which one?
Tools – Proxy’s – Which one?
• nginx
Tools – Proxy’s – Which one?
• haproxy
Tools – Proxy’s – Which one?
• httpd
Tools – Proxy’s – Which one?
• Pick by features
• All are mature and well supported
• Nginx is clear popularity winner
Living in a Microsoft world?
• Application Request Routing
(ARR)
• Snaps in to IIS
• Familiar UI
• UI!!! Not command line!
• Configuration documents
• XML
ARR
ARR
Azure API
Management
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
Plug the API into the manager
Take advantage of the magic: operations
• Adding operations enables built in tools
“Products”
• You have to add your API to your products
Now subscribe to the Product
• Users have to subscribe to products, to get access to API’s
• Administrators are auto subscribed
Developer Portal
• We can test our api from the developer portal
• Upper right of admin panel
Developer Portal
Code Generation
Console for testing
Questions?
Andrew Siemer - Clear Measure
andrew@clear-measure.com
(512) 387-1976
@asiemer

Making your API behave like a big boy

  • 1.
    API Management Making yourAPI behave like a big boy Andrew Siemer | Clear Measure andrew@clear-measure.com @asiemer
  • 2.
    Welcome to Azure Austin Allthings related to the Microsoft Cloud! meetup.com/AzureAustin
  • 3.
    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
  • 4.
    Andrew Siemer http://about.me/andrewsiemer ASP Insider MSv-TSP (Azure) Azure Advisor Program Father of 6. Jack of all trades, master of some.
  • 6.
    • Stories fromthe programming trenches • How to grow your programming career • http://www.developerspringboard.com • @devspringboard
  • 7.
     We arehiring!!!
  • 8.
    Introduction What is anAPI management tool and why do I need it?
  • 9.
    More details here! •Andrew Siemer on LosTechies • “making your api behave like the big boys” • http://goo.gl/DTQIGu
  • 10.
    Topics to cover •Downside of directly exposing your API • Introducing Proxy’s & Gateways • Features you need to know about • Available tools • Azure API Management
  • 11.
    Downside of directaccess • 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!
  • 12.
    Proxy’s and Gateways •Proxy • Thin pass through • Expects something on the other end to respond • Gateway • Thick pass through • Exposes mega feature list
  • 13.
    Features available inmanaged API • Acceleration • Routing • URL Rewriting • Versioning • Cohesion • Rate Limiting & Throttling • Security • Server Affinity • Monitoring • A/B Testing • Blue/Green Deployments
  • 14.
    Tools – Proxy’s •Nginx • HAProxy • httpd
  • 15.
    Tools – Proxy’s– Which one?
  • 16.
    Tools – Proxy’s– Which one? • nginx
  • 17.
    Tools – Proxy’s– Which one? • haproxy
  • 18.
    Tools – Proxy’s– Which one? • httpd
  • 19.
    Tools – Proxy’s– Which one? • Pick by features • All are mature and well supported • Nginx is clear popularity winner
  • 20.
    Living in aMicrosoft world? • Application Request Routing (ARR) • Snaps in to IIS • Familiar UI • UI!!! Not command line! • Configuration documents • XML
  • 21.
  • 22.
  • 23.
  • 24.
    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
  • 25.
    Plug the APIinto the manager
  • 26.
    Take advantage ofthe magic: operations • Adding operations enables built in tools
  • 27.
    “Products” • You haveto add your API to your products
  • 28.
    Now subscribe tothe Product • Users have to subscribe to products, to get access to API’s • Administrators are auto subscribed
  • 29.
    Developer Portal • Wecan test our api from the developer portal • Upper right of admin panel
  • 30.
  • 31.
  • 32.
  • 33.
    Questions? Andrew Siemer -Clear Measure andrew@clear-measure.com (512) 387-1976 @asiemer

Editor's Notes

  • #6 Andrew Siemer, I am an ASP Insider, Microsoft virtual technology specialist program, father of 6, and general jack of all trades – master of some! I enjoy all things texas, obstacle racing, cowboying, and playing with my six kids
  • #7 I have written several books on the topic of programming in ASP.NET, and one more farming oriented
  • #9 I currently work for Clear Measure in Austin Texas. We are hiring! I have also worked for companys such as Dell, Callaway golf, and lamps plus.