平台介绍-开放API后台微服务

由于平台的数据库是分布的(一般按业务进行分布,例如OA的、人力资源的),加上一个微服务对应一个数据库的默认限制,决定了开放API后台微服务也是多个。从策略上,可以把开放API服务和内部微服务合二为一,即对外系统提供开放API服务,又对内提供业务调用服务。但是不建议这么做。

首先,两种调用的鉴权方式不同,拦截器不同。

其次,从安全角度,对内服务的服务内容更多,开放API一般服务有限,不易混在一起。

最后,分开维护比较方便点。

其他系统访问开放API服务可以直连对应服务器。平台不推荐这个方式,正规做法还是让其他系统统一访问网关,通过访问路由到具体开放API服务。这样也会带来另一个好处,就是API服务也可以根据访问量的不同,启动多个服务。

开放API后台服务路由规则如下:

/openapi/api服务标识/具体服务地址。

/openapi前缀告诉spring gateway这是一个openapi请求,需要使用不同于内部服务调用的鉴权方式。

api服务标识告诉spring gateway路由到那个api服务。

相关推荐
bLEd RING4 分钟前
Redis 设置密码无效问题解决
数据库·redis·缓存
WiChP26 分钟前
【V0.1B5】从零开始的2D游戏引擎开发之路
java·服务器·数据库
75115891 小时前
笔记:postgresql如何下载驱动并安装?
数据库·postgresql
荒川之神1 小时前
拉链表概念与基本设计
java·开发语言·数据库
Highcharts.js2 小时前
适合报表系统的可视化图表|Highcharts支持直接导出PNG和PDF
javascript·数据库·react.js·pdf
ZC跨境爬虫2 小时前
使用Claude Code开发校园交友平台前端UI全记录(含架构、坑点、登录逻辑及算法)
前端·ui·架构
刘~浪地球2 小时前
Redis 从入门到精通(一):简介、安装与配置
数据库·redis·缓存
APIshop2 小时前
Java获取京东商品详情接口(item_get)实战指南
java·linux·数据库
Bat U2 小时前
MySQL数据库|联合查询
数据库·mysql
卢傢蕊2 小时前
MySQL 故障排查与生产环境优化
数据库·mysql