View
27
Download
1
Category
Tags:
Preview:
Citation preview
@coldfumonkehMatt Gifford
API Management from the Trenches
CONSUMER DEBUGGING
AUTHOR DEBUGGING
CONSIDERATIONS
CONSUMER DEBUGGING
SELECTION
DISCOVERY
MICRO SERVICES
“Great things are done by a series of small things brought together.”
- Vincent Van Gogh
ABSTRACTION
VERSION MONITORING
NETWORK
CONNECTION
http://bit.ly/1uIZrYV
AUTHENTICATION
USE A LIBRARY
TEST IN ISOLATION
DIRECT API CALLS
SPEED
SCOPE
FIREFOX REST CLIENT PLUGIN
work on these
cURL
curl -i -X PUT httpbin.org/put -H Content-Type:application/json -d ‘{“hello”: “world”}’
github.com/jakubroztocil/httpie
http PUT httpbin.org/put hello=world
HTTPie
POSTMAN (v1)
POSTMAN (v2)
PAYLOAD
MOCK API
SCHEMA
CHANGE
RATE LIMITS
EFFICIENCY
mockable.io
apiary.io
mocky.io
Fake APIFAKE API
OFFLINE
SECURITY
DYNAMIC
npm install interfake --save
var Interfake = require('interfake');var interfake = new Interfake();interfake.get('/whats-next').body({ next : 'more stuff '});interfake.listen(3000); // The server will listen on port 3000
{ "next":"more stuff"}
http://localhost:3000/whats-next
PROXY
SNOOPING
REPLAY
TUNNEL
charlesproxy.com/
httpkit.com/wiretap
runscope.com/docs/inspector
CACHE MANAGEMENT
AUTHOR DEBUGGING
LOGGING
AUDIT TRAIL
FIND ISSUES
ANALYSIS
CLOUD LOGGING
www.sumologic.com
logstash.net
www.loggly.com
ERROR REPORTING
EXCEPTIONS
bugsnag.com
airbrake.io
getsentry.com
MONITORING
zapier.com/status
apimetrics.io
runscope.com/radar
LOAD TESTING
github.com/JoeDog/siege
loader.io
github.com/wg/wrk
wrk -t12 -c400 -d30s http://127.0.0.1:8080/index.html
Running 30s test @ http://127.0.0.1:8080/index.html 12 threads and 400 connections Thread Stats Avg Stdev Max +/- Stdev Latency 635.91us 0.89ms 12.92ms 93.69% Req/Sec 56.20k 8.07k 62.00k 86.54% 22464657 requests in 30.00s, 17.76GB read Requests/sec: 748868.53 Transfer/sec: 606.33MB
CONSIDERATIONS
DOCUMENTATION
API DESIGN
apiblueprint.org
raml.org
swagger.io
bit.ly/designApi
SDKs
SPEAK TO A HUMAN
@kinlane@johnsheehan
@synedra
THANK YOU
Recommended