美文网首页
《十》、springcloud微服务——总结

《十》、springcloud微服务——总结

作者: 神奇作手 | 来源:发表于2019-07-29 16:02 被阅读0次

一、前期内容梳理与架构

1、架构图

2、内容梳理

(1)、整套开发技术栈以SpringCloud为主、单个微服务模块以SpringMVC+SpringBoot/Spring+MyBatis组合进行开发;
(2)、前端层,页面H5+thymeleaf/样式CSS3+Bootstrap/前端框架JQuery+Node|Vue|react等;
(3)、负载层,前端访问通过Http或Https协议达到服务端的LB,可以是F5等硬件做负载均衡,还可以自行部署LVS+Keepalived等 (前期量小可以直接使用Nginx)
(4)、网关层,请求通过LB后,会达到整个微服务体系的网关层Zuul(Gateway),内嵌Ribbon做客户端负载均衡,Hystrix做熔断降级等;
(5)、服务注册,采用Eureka来做服务治理,Zuul会从Eureka集群获取已发布的微服务访问地址,然后根据配置把请求代理到相应的微服务去;
(6)、docker容器,所以的微服务模块都部署在Docker容器里面,而且前后端的服务完全分开,各自独立部署后前端微服务调用后端微服务,后端微服务之间会有相互调用;
(7)、服务调用,微服务模块间调用都采用标准的Http/Https+REST+JSON的方式,调用技术采用Feign+HttpClient+Ribbon+Hystrix;
(8)、统一配置,每个微服务模块会跟Eureka集群、配置中心(SpringCloudConfig)等进行交互;
(9)、第3方框架,每个微服务模块根据实现的需要,通常还需要使用一些等三方框架,比如常见的有:缓存服务(Redis)、图片服务(FastDFS)、搜索服务(ElasticSearch)、安全管理(shiro)等;
(10)、Mysql数据库,可以安装微服务模块进行拆分,统一访问公共库或者单独自己库,可以单独构建MySql集群或者分库分表MyCat等;

二、后期内容展望

(1)、SpringCloud Stream:数据流操作开发包;
(2)、SpringCloud Turibine: 是聚合服务器发送事件流数据的一个工具,用来监控集群下hystrix的metrics情况;
(3)、SpringCloud Task:提供云端计划任务管理、任务调度;
(4)、SpringCloud Sleuth:日志收集工具包实现了一种分布式追踪解决方案,封装了Dapper和log-based追踪以及Zipkin和HTrace操作;
(5)、SpringCloud Security:基于spring security的安全工具包,为应用程序添加安全控制;
(6)、服务部署:Kubernetes,OpenStack;
(7)、全链路追踪:Zipkin,brave;
(8)、服务监控:zabbix;
(9)、SpringCloud CLI:基于SpringBoot CLI,可以让你以命令行方式快速建立云组件;
(10)、全局控制:选举leader、全局锁、全局唯一id;
(11)、安全鉴权:auth2、opendId connect;
(12)、自动化构建与部署:gitlab+jenkins+docker;
(13)、服务监控和警告(SpringBoot Admin)
......


后期的待续...


相关文章

网友评论

      本文标题:《十》、springcloud微服务——总结

      本文链接:https://www.haomeiwen.com/subject/azvbrctx.html