GoKu网关 提供企业版【EE】 与开源版【CE】 两个版本,满足不同阶段用户对于微服务的需求,两个版本均支持 私有云部署 。
Apinto开源版本 是 Goku 开源版【CE】的一次架构升级,经过前面几年的网关架构和客户需求的摸索,我们已经在微服务网关上面积累了大量的实践经验,现在我们抱着更加开放的心态,希望能够将过往的产品和技术经验重新整理并回馈技术社区,因此我们在今年3月开始了新的一轮重构。
版本适用范围
GoKu企业版: 适用于中大型企业,可加速企业数字化转型,是一个降低成本和提高灵活性的微服务解决方案;
Goku开源版:适用于个人或小型团队,仅支持最基本的网关功能。获取仓库请点击Goku开源版
Apinto开源版: 适用于个人或小中型团队,提供网关核心功能,拥有简易控制台。获取仓库请点击Apinto开源版
$$
免费试用企业版,申请地址 https://www.eolink.com/apply_ams_cloud/
$$
版本功能对比
功能 | 描述 | Goku开源版 | Goku企业版 | Apinto开源版 |
控制台界面 | 全Web化配置,操作易用 | √ 自带可视化界面 | √ 自带可视化界面 | √ 可视化界面仓库 |
水平扩展 | 多集群、多节点 | √ | √ | √ |
容器部署 | 支持通过容器(Kubernets等)动态扩展 | √ | √ | √ |
节点异地多活 | 节点自动切数据源 | √ | √ | √ |
动态路由 | 根据请求参数、请求路径进行动态路由匹配,分配流量到指定服务,支持Header、Query、Location(Location指标类似Nginx的Location)等路由指标 | √ | √ | √ |
协议 | 通信相关协议,如HTTP/HTTPS、Webservice等 | * HTTP * HTTPS * Restful * Webservice * SOAP | * HTTP * HTTPS * Restful * Webservice * SOAP | * HTTP * HTTPS * Restful * Webservice * SOAP * gRPC(后续接入) * TCP(后续接入) * WebSocket(后续接入) |
SSL证书 | 可为网关配置多个ssl证书 | √ | √ | √ |
访问域名 | 可为网关配置多个域名进行访问 | √ | √ | √ |
数据处理 | 请求内容与返回内容支持JSON与XML互转 | | | |
多租户 | 多个访问策略 | √ | √ | √ |
服务编排 | 把多个API封装成一个API提供服务,对返回数据做重新组装 | √ | √ | |
服务发现 | 支持对接Eureka、Nacos、Consul、Kubernetes等多个服务注册中心 | * Eureka * Nacos * Consul * Kubernetes | * Eureka * Nacos * Consul * Kubernetes | * Eureka * Nacos * Consul |
负载均衡 | 根据权重动态分配流量,减小服务器压力 | √ | √ | √ |
健康检查 | 转发列表自动剔除异常后端,后端正常再恢复转发 | √ | √ | √ |
用户鉴权 | 匿名、Basic、Apikey、OAuth2、JWT、OAuth2第三方认证、AK/SK认证等多种鉴权 | * 匿名 * Basic * Apikey | * 匿名 * Basic * Apikey * OAuth2 * JWT * OAuth2.0第三方认证 * AK/SK认证 | 匿名 * Basic * Apikey * JWT * AK/SK认证 |
流控控制 | 粒度可达API级别 | | √ | √ |
熔断API | 熔断单个API | | √ | |
服务降级 | 给某个API进行服务降级 | | √ | |
灰度发布 | 金丝雀发布 | | √ | √ |
API监控统计 | 监控数据输出到控制台,提供图表(请求数、响应时间等)查看;也可对接Pormetheus、Graphite等第三方组件 | | √ | |
API告警 | 告警粒度最细可达API级别,可发送告警邮件,也通过Webhook对接企业内部通知系统、短信API等 | | √ | |
日志分析 | 全面的请求日志、节点日志和控制台日志,方便排查问题和做统计分析,支持输出日志内容到 Prometheus、Graphite等第三方组件 | | √ | √ |
节点异常自启 | 节点异常重新拉起,并产生告警 | | √ | |
Redis告警 | 自动监控Redis,异常则产生告警 | | √ | |
插件化 | 基于Golang自行开发插件 | √ | √ | √ |
用户权限 | 给不同的用户添加不同模块的操作权限 | | √ | |
导入导出接口文档 | Eolinker | √ | √ | |
超时 | API设置不同超时限制 | √ | √ | √ |
重试 | 为避免网络抖动的情况,API超时重新发送请求 | √ | √ | √ |
其他 | OPEN API | | √ | √ |
服务支持 | 规划方案、在线客服、产品培训 | | √ | |
GoKu网关开源版支持插件:
IP黑白名单、Basic鉴权、Apikey鉴权、参数映射、额外参数
GoKu网关企业版支持插件:
流量控制、Basic鉴权、Apikey鉴权、OAuth2.0鉴权、OAuth2.0第三方认证、JWT鉴权、AK/SK认证、IP黑白名单、跨域、防重放攻击、返回头部、默认返回、参数映射、额外参数、熔断、服务降级、请求大小限制、数据缓存、请求xml/json转换、响应xml/json转换
Apinto开源网关支持插件:
请求重写、响应重写、Basic鉴权、Apikey鉴权、JWT鉴权、AK/SK认证、额外参数、参数映射、gzip压缩、流量控制、ip黑白名单、跨域、熔断、access日志