概述
目录
- 前言
- 测试报告
- 模块介绍
- 已实现
- 核心框架:springcloud F.SR2版
- 配置/服务中心:alibaba nacos(动态配置/服务注册与发现)
- 鉴权模块:springcloud security(oauth2)
- 网关模块:springcloud zuul+nepxion discovery(灰度发布/版本控制)+alibaba sentinel(流量卫士)
- 调度中心:xxl-job(大众点评调度中心)
- 服务模块:由各实际业务组成
- 数据源:mysql5.8主从,mongdb,redis
- 计划实现中:
- sharding-sphere实现分表分库
- 监控模块:elk/zipkin(目前与nacos冲突?)/Grafana
- 分布式事务:尚未决定用哪款
- 后台管理ui(vue)
- cacheCloud(搜狐redis管控中心)
- docker/k8s/jenkins集群自动化部署
前言
本篇着重与技术概览,详细的整合步骤有时间会慢慢补充(应该不会有催更的)
正好公司最近有意向搭建微服务架构,希望能够从现有若干产品中分离出核心业务,未来以功能模块对外提供灵活组装的产品。自己接触微服务有小半年了,但是对这块的认知还是比较浅显,这么久自己总是在看别人的博客,是时候写一篇属于自己的了,因此我抽了些时间按照自己的理解分了模块,并对各种新技术尝个鲜,希望完成后可以和大家分享讨论完善。
原本打算将设想的功能全部实现并测试后再写这篇文章,但是在实现过程中遇到了很多坑,怕后面会忘记所以决定采用边做边写的形式,并按模块记录。(全当是踩坑记录好啦)
技术选型我尽量选择稳定、易搭建、易维护,稳定的开源框架不但减少了运维成本还能学习优秀的设计思想、代码风格和实现方式。推荐大家在使用开源项目遇到问题是先去issues或这全局搜一下关键字,比直接百度有用。
测试报告
未来将把测试报告放在这里给大家参考
模块介绍
已实现
核心框架:springcloud F.SR2版
网上有许多优秀的springcloud文章,可以通过idea直接快速搭建脚手架,选用F.SR2版完全是因为这是目前(2019年1月22日)最新最稳定版,与各开源框架的兼容性也最好。
配置/服务中心:alibaba nacos(动态配置/服务注册与发现)
官网:https://nacos.io/zh-cn/
github:
- 独立版:https://github.com/alibaba/nacos 可直接参考官网文档搭建
- springcloudAlibaba组件版:配置中心,服务注册与发现
本项目的实现[搭建分布式微服务框架–配置中心、服务注册于发现]1
鉴权模块:springcloud security(oauth2)
如果你不是很了解或者oauth2,强烈推荐先了解oauth2的一些基本概念
了解概念后可以搜索springcloud security oauth2尝试自己搭建
本项目的实现[搭建分布式微服务框架–鉴权]2
网关模块:springcloud zuul+nepxion discovery(灰度发布/版本控制)+alibaba sentinel(流量卫士)
- discovery
- sentinel独立版
- sentine springcloudalibaba 组件版
- GateWay替换zuul(努力中…)
本项目的实现[搭建分布式微服务框架–网关]3
调度中心:xxl-job(大众点评调度中心)
官网:http://www.xuxueli.com/xxl-job/#/
github:https://github.com/xuxueli/xxl-job
本项目的实现[搭建分布式微服务框架–调度中心]4
服务模块:由各实际业务组成
希望各位使用任何开源项目能去给作者们一个star,让他们有动力更新和完善
使用到的有
1:mybaties-plus
2:hutool
3:swagger2.0+xrebel
4:thrift
5:shardingsphere
数据源:mysql5.8主从,mongdb,redis
mysql5.8主从,mongdb,redis的安装和实现都很简单,这里就不阐述了
本项目的实现[搭建分布式微服务框架–数据源]5
计划实现中:
sharding-sphere实现分表分库
官网:http://shardingsphere.io/index_zh.html
github:https://github.com/apache/incubator-shardingsphere
监控模块:elk/zipkin(目前与nacos冲突?)/Grafana
elk总觉得太重,如果有更好的请各位留言推荐
1.目前实现nacos、mysql的Grafana监控
分布式事务:尚未决定用哪款
可参考的项目:
- Hmily QQ群:162614487
- LCN
后台管理ui(vue)
可参考的项目
- pig-ui QQ群:23754102
- renren-fast-vue
cacheCloud(搜狐redis管控中心)
官网:https://cachecloud.github.io/
搜狐很良心有详细的视频教程,这块如果有运维人员可以直接让运维去做
docker/k8s/jenkins集群自动化部署
之前实现了jenkins+git钩子触发部署,但总觉得有点慢?
https://blog.csdn.net/qq_32628775/article/details/86592187 ↩︎
尚未编写 ↩︎
尚未编写 ↩︎
尚未编写 ↩︎
尚未编写 ↩︎
最后
以上就是诚心毛豆为你收集整理的搭建分布式微服务框架--总览的全部内容,希望文章能够帮你解决搭建分布式微服务框架--总览所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复