Skip to content

一个自研的API网关,基于Netty、Zookeeper、Shrio、Dubbo、Docker、Dockerfile、Nginx。

Notifications You must be signed in to change notification settings

leanlivestwan/api-gateway-core

Repository files navigation

api-gateway

一个自研的API网关,基于Netty、Zookeeper、Shrio、Dubbo、Docker、Dockerfile、Nginx。 整个API网关设计的核心内容可以分为以下五块:

通信协议处理:这是API网关最基本的功能,需要使用NIO框架如Netty来处理HTTP请求,并进行协议转换和泛化调用到RPC服务,然后将返回的数据信息返回给客户端。

注册中心:API网关作为一个算力资源,每次部署一个网关服务,都需要向注册中心注册一个算力。注册中心还需要接收RPC接口的注册,可以通过SDK自动扫描注册或者手动管理。一旦RPC接口注册完成,注册中心会根据AHP权重计算将其分配到一组网关算力上进行使用。

路由服务:每个注册的Netty通信服务都会与其对应的分组网关相关联。例如,通过配置Nginx的路由规则,将不同的接口调用请求路由到相应的Netty服务上。这样可以确保接口请求能够正确地到达目标服务。

责任链下的插件模块调用:鉴权、授权、熔断、降级、限流、流量切分等服务虽然不是API网关的核心功能,但通常也会作为共性通用的服务放置在网关层进行统一设计、实现和使用。

管理后台:作为一个完整的API网关项目,管理后台是必不可少的。管理后台提供接口的注册维护、模拟测试、日志查询、流量整形、网关配置管理等功能,方便对API网关进行管理和监控。

About

一个自研的API网关,基于Netty、Zookeeper、Shrio、Dubbo、Docker、Dockerfile、Nginx。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages