+-
微服务-调用三方服务接口项目设计
首页 专栏 java 文章详情
0

微服务-调用三方服务接口项目设计

彣彧 发布于 4 月 22 日

背景

项目开发过程中通常会调用一些三方的接口。
例如:对象存储,企业信息查询,短信发送等等。

问题

因为三方的接口通常都是有多个产品可以选择的,例如,对象存储服务,可以使用阿里云的OSS,华为云的OBS,还有本地部署的FastDFS、Minio等,所以有时候需要考虑扩展性。

通常项目使用三方的接口在开发时基本会确定而且日后很少更换,也很难更换(例如对象存储如果需要更换的话,还要牵扯历史数据的迁移。但是短信服务更换相对来说迁移成本就很低)。

设计思路

Java是面向对象语言,遵从面相接口开发模式。

设计接口

因为现有的三方接口需要的参数其实差不多,所以可以餐口某一家的设计接口。例如对象存储服务上传对象需要,bucket名称,对象id等。

具体实现

针对接口去做具体的实现。

代码开发方式

整合

优点:不需要额外创建jar包,单体应用适用。 缺点:三方接口可能需要引入自己的jar包,maven中可能需要引入多个三方的jar包,不过可以使用scope来设置是否打包到项目中

拆分

优点:可以根据接口独立的开发三方的具体实现,maven中只需要引入需要的部分 缺点:需要额外的jar包,不太适合单体应用

示例

因为想打造一个通用的服务于微服务的功能,所以采用了拆分的代码开发方式开发。
github:
https://github.com/wenyu7980/...
gitee:
https://gitee.com/wenyu7980/w...

总结

本文更多的想展现一种应对三方接口开发的思路,虽然实际开发中很好会出现更换三方接口的情况。

java 微服务 spring-cloud
阅读 74 发布于 4 月 22 日
举报
收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
微服务工程化搭建
无敌的我,又掉坑里了!!!!
关注专栏
avatar
彣彧

致力于B端的中台开发

0 声望
0 粉丝
关注作者
0 条评论
得票数 最新
提交评论
avatar
彣彧

致力于B端的中台开发

0 声望
0 粉丝
关注作者
宣传栏
目录

背景

项目开发过程中通常会调用一些三方的接口。
例如:对象存储,企业信息查询,短信发送等等。

问题

因为三方的接口通常都是有多个产品可以选择的,例如,对象存储服务,可以使用阿里云的OSS,华为云的OBS,还有本地部署的FastDFS、Minio等,所以有时候需要考虑扩展性。

通常项目使用三方的接口在开发时基本会确定而且日后很少更换,也很难更换(例如对象存储如果需要更换的话,还要牵扯历史数据的迁移。但是短信服务更换相对来说迁移成本就很低)。

设计思路

Java是面向对象语言,遵从面相接口开发模式。

设计接口

因为现有的三方接口需要的参数其实差不多,所以可以餐口某一家的设计接口。例如对象存储服务上传对象需要,bucket名称,对象id等。

具体实现

针对接口去做具体的实现。

代码开发方式

整合

优点:不需要额外创建jar包,单体应用适用。 缺点:三方接口可能需要引入自己的jar包,maven中可能需要引入多个三方的jar包,不过可以使用scope来设置是否打包到项目中

拆分

优点:可以根据接口独立的开发三方的具体实现,maven中只需要引入需要的部分 缺点:需要额外的jar包,不太适合单体应用

示例

因为想打造一个通用的服务于微服务的功能,所以采用了拆分的代码开发方式开发。
github:
https://github.com/wenyu7980/...
gitee:
https://gitee.com/wenyu7980/w...

总结

本文更多的想展现一种应对三方接口开发的思路,虽然实际开发中很好会出现更换三方接口的情况。