1. HXAPIGate网关简介
HXAPIGate(中文名:浩心API网关),其核心能力在于对API微服务的零侵入,使用HXAPIGate代理微服务API接口时,微服务建设只需要进行纯粹的业务代码实现即可,不需要考虑任何权限管理以及数据安全和服务安全等,将这部分工作完全交给浩心API网关来管理和维护;
浩心目前仅依赖mysql,有选择的依赖zookeeper,目前已经支持分布式架构下的API接口鉴权、限流、负载均衡、熔断、降级等
整体的部署架构如图所示:
注:ignite为嵌入式内存数据库,不需要用户单独部署
2. 环境搭建
基础环境准备
- java1.8、mysql5.7、zookeeper等基础环境搭建
2. 表创建及基础数据导入
通过执行项目自带的“hxapigatev2.0.sql”脚本,
3. 服务启动
启动HXBootShiro
- 修改HXBootShiro配置文件,主要修改zk和mysql信息
- 启动服务,服务ip为18080
浏览器输入“http://localhost:18080/static/login.html”,默认用户名密码“admin/123456”
登录之后页面如下:
API网关相关功能介绍,请阅读项目README
启动HXAPIGate
修改完成之后执行Entrance.java,启动API网关,网关服务端口为8081
4. 功能测试
1、接口代理测试
通过postman模拟接口调用,调用被网关代理的用户登录接口
执行结果如下:
2、接口代理限流功能测试
当前接口默认路由TPS为19,将TPS值修改为0并保存:
再次通过postman调用登录接口,其返回结果如下: