最近 Peter 找到了一个 API 框架 Kong,解决对外提供 API 服务时的一些共性问题。
- Kong 基于 Nginx-Lua 实现的一个 API 微服务网关;
- Blowing Up the Monolith: Adopting a Microservices-Based Architecture;
- Kong orchestrates common functionality
- Build efficient distributed architectures ready to scale
- Expand functionality from one place with a simple command
- Focus on your product and let Kong do the REST
Deployment
API Gateway Pattern(centralized pattern)-
API Gateway Pattern
Deploy Kong in a centralized pattern where APIs consume Kong services for authentication, rate limiting and more at the gateway.
Sidecar Pattern(decentralized “mesh”) - Sidecar Pattern
Deploy Kong in a decentralized “mesh” where microservices and APIs are tightly integrated with Kong services.
Introduction
- Kong: Secure, Manage and Orchestrate Microservice APIs.
- a powerful offering for organizations
in need of security, monitoring, compliance, developer onboarding, higher performance, granular access and a dashboard to manage Kong easily. - The Microservice API Gateway
Quickly build API-centric applications. Leverage the latest microservice and container design patterns. And tie it all together with the Kong microservice API gateway.
securing, managing, and orchestrating microservice APIs
- Speed development cycles
- Standardize authentication across all your APIs
- Improve application scalability while reducing transaction latency
- Implement fine-grained control over HTTP requests and responses
- Monitor application vital signs and API behavior in real-time
- Avoid vendor lock-in with open source API gateway technology
- Extend microservices with configurable Kong plugins.
关联点
-
Lua
Lua is a lightweight, multi-paradigm programming language designed primarily for embedded use in applications. - API
An API can be thought of as an instruction manual for communication between multiple software apparatuses. For example, an API may be used for database communication between web applications. By extracting the implementation and relinquishing data into objects, an API simplifies programming. -
PostgreSQL
Postgres, an object-relational database management system (ORDBMS) with an emphasis on extensibility and standards compliance. -
DB-Engines Ranking;ACID,CAP theorem;
ACID:原子性(atomicity,或称不可分割性)、一致性(consistency)、隔离性(isolation,又称独立性)、持久性(durability)。 -
Apache Cassandra
Free and open-source distributed NoSQL database management system, developed by Facebook. - What is Cassandra?
Consul @github & consul.io
- Service Discovery and Configuration Made Easy
- Service Discovery
- Failure Detection
- Multi Datacenter
- KV Storage
网友评论