动机
公司原有的内网调用各委办局接口采用的是mule的ESB方式,由于原团队一家离职没有人维护,委办局接口发生变化之后,部署经常性出现问题。个人对于mule的方式也不是很了解,于是用公司原有的spingmvc的基线版本,将所有接口调用都放到一个项目里进行了第一次重构。
第一次重构解决了接口变更重新修改部署难的问题,但是引入了一个新的问题,在排查接口报错的时候,由于所有委办局接口都在一个项目调用,日志刷新比较快,不容易实时抓取到错误日志。正好前段时间研究了springboot相关技术,并使用springboot重新搭建了一套ssm的后台基线框架,于是便有了这次使用springboot重构本地内网项目的想法。
目标
- 使用springboot重写内网的接口服务。
- 添加网关服务。
- 增加用户、授权、鉴权模块
- …
- 最终完成一个可视化API平台(饼有点大)
过程
第一步
第一次改造项目的中的每一个单独service类采用springboot重构,目前采用每一个委办局创建一个单独的springboot项目。(已完成项目重构)
第二步
网关的选择上没有任何纠结,由于本人对spring的信服,知道有springcloud-gateway的网关之后,直接就选择了它。下面是官网提供的2种路由方式。
选择了java Bean的方式,做了初步简单路由转发,实现所有服务统一网关入口。