chenxing1020 / heimdall

统一、轻量、透明、安全、易拓展的接入层网关

Home Page:https://github.com/chenxing1020/api-gateway/wiki/API-Gateway%E7%BD%91%E5%85%B3%E8%AE%BE%E8%AE%A1%E6%80%9D%E8%B7%AF

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HEIMDALL

img.png

项目简介:Heimdall gateway取名来自北欧神话中的守护之神,该项目总体设计参考并简化了美团 百亿规模API网关服务Shepherd的设计与实现,旨在建设统一、轻量、透明、安全、易拓展的接入层网关。

控制面:

控制面由研发管理工具DevTools配置中心两部分组成,

DevTools

主要负责API的创建、生成、维护等生命周期管理,同时也提供网关层面的API管控配置如登录态、权限、资源域以及校验等,并将配置下发至配置中心;

API网关的配置中心

选型为Apollo,其成熟的热加载能力可以支持实时推送控制面和数据面的信息交互,且具备鲁棒的failover机制。

数据面:

数据面即网关的核心服务,核心服务集成了一系列基础功能组件,通过泛化调用请求后端的RPC、HTTP服务,最终返回用户请求响应。