Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Preface
Who is this book for?
1. Microservices architecture
Monolith’s most popular patterns in view of Microservices
Three-tier architecture
MVC architecture
Microservices answer
Bounded Context
Small in size
Various platforms
Y axis scaling
Ideal environment of microservices
Communicating with the world
Does a different service mean a different engine?
Using an API gateway
API Gateway variation
Multiple servers for one services
Summary
2. API Gateway - A rapidly changing landscape
What is an ESB?
What is an API Gateway?
Is an API Gateway a new ESB?
API Gateway present
API Gateway future
Serverless
Service Meshes
Sidecar Gateways
API First: Weathering the storm
Summary
3. Kong: API Gateway disruptor
API Centric
Open Sourced
Configurable
Extensibility (High level)
Enterprise Edition: API platform
What is an API Platform
API Gateway
Developer Portal
Management Portal
What is it disrupting?
Kong
Tyk.io
KrakenD
Apigee
IBM API Connect
Summary
4. Kong architecture
Overall approach and black box description
The HTTP server blocks
Database and high level blocks
Requests/response path
Summary
5. Meet the Kong
Example: Setting up a simple microservice (Cinema3)
Starting Kong
Install & Configure Kong
Setting up a datastore
Securing Kong
Customize Nginx
Play with Kong
Add a new API
Example: Adding our first API
Using plugins with an API
Example: Limiting requests to the API
Creating consumers
Example: Protect APIs with a consumer & authentication layer
Sizing up Kong
Load Balancing
Example: Load balance our service
Health check your API
Example: Health Check our service
Clustering
Caching
Summary
6. Extending Kong
Installing custom plugins
Manually
Loading plugins
Building your own plugin
Plugin configuration
The core of the plugin
Plugin migrations and Dao factory
Extending the Admin API
Execution order
Plugin testing
Unit tests
Integration tests
Share it with luarocks
7. Integrating with others
Deployment
Docker
Installation
Deploy services
Deploy Kong
Creating API
Kubernetes
Installation
Deploy your services
Deploy Kong
Creating an API
Monitor & analysis
Datadog (not open source)
Installation
Configuration
Setting up dashboard
ELK Stack
Installation
Configuration
Setting up dashboard
Configuration
Konga
Installation
Configure Kong
Additional Functionalities
Summary
8. API Gateway Techniques
Multi Consumer management
Versioning management
Changes that maintain backward compatibility
Changes that break backward compatibility
Major, minor and fix versions
Supporting several versions on the same gateway
Logging for failure or error
Clear Data origin
Notifications for failures or errors
Caching criteria
Rate limiting
Limit the amount of requests consumers may have
Allocate more for higher priority requests
Routing common issues
HTTP CORS issues
Specific-Purpose route
POST or GET not ANY for HTTP Requests
Business authorization in the API Gateway
Composing data in the API Gateway
Transforming API requests and responses
Doing workflow in the API Gateway
Summary
9. API Security
Key authentication
Creating consumers
Protecting an API with the Key Authentication plugin
Assigning keys to client applications
Using a key to invoke an API
Protecting APIs with OAuth2
Enabling OAuth2 plugin
Client Credentials grant
Authorization Code grant
Resource Owner Password Credentials grant
Implicit grant
Refresh Token grant
Summary
OpenID Connect
New and modified flows
The ID Token
New endpoints
Kong support for OpenID Connect
Protecting APIs with JWT
What is a JSON Web Token?
Enabling the JWT plugin
Adding JWT credentials to a Consumer
Putting it all together
CORS
Conclusion
← Prev
Back
Next →
← Prev
Back
Next →