地址:联系地址联系地址联系地址
电话:020-123456789
传真:020-123456789
邮箱:admin@aa.com
阅读原文:【技术分享】微服务开发的技术幸福感 ,是分享如何提升的?
点击关注“八戒技术团队”,阅读更多技术干货
随着微服务的微服务开流行 ,越来越多公司使用了微服务架构,幸福但由于公司业务的感何特殊性、技术栈的提升历史原因等,都需要选择一个适合自己公司的技术服务开发框架 ,对框架进行规范定义,分享集成自研组件和系统,微服务开让业务迭代实现更快速,幸福让开发人员使用更便捷。感何
本文将基于SpringBoot,提升从框架约束 、技术自研中间件集成 、分享强类型客户端 、微服务开接口文档等多个方面介绍服务框架的设计与实践 。
一 、背景介绍
公司后端服务是以Java生态为主,有基于Dubbo的RPC服务、基于SpringBoot的HTTP服务两种开发模式,所有服务基于K8S的容器云双机房独立部署 ,支持双活流量的架构 。
结合公司上下文环境 、业务规模,综合考虑技术栈统一、服务治理、使用成本等多方面的因素,经过多部⻔商议,确定将“基于SpringBoot开发HTTP服务”作为主要开发模式。公司每天都有一些新的微服务产生 ,很多自研组件服务和中间件系统,需要服务开发者单独接入,为了规范和简化后端服务开发者集成应用 ,一套规范、集成的开发框架就变得非常有必要 。
二 、基于SpringBoot的服务框架设计
1 、如何统一规范框架的使用?
统一规范可以通过默认约定、强制校验、自动内嵌等多种方式来实现 ,下面将分别举例说明。
统一管理依赖包(默认约定)
基于Maven的依赖包管理,通过Partent统一定义依赖包及版本,默认引入必须的依赖包和插件。创建工程自动生成代码时 ,默认约定继承Parent ,开发者只需引入必要的Starter即可 ,开发者可以修改继承关系,但不推荐 。
依赖包的统一管理,可以避免不同版本包冲突的麻烦,也方便后期公司统一升级依赖包和版本。