手写SpringBoot
Working ability is greater than attitude.
talk is cheap, show me the code,make a better result.
目录
概述
Springclound 组件
需求:
需求整理如下:
1.服务治理
2.客户端负载均衡
3.服务容错保护
4.声明式服务调用
5. 过滤:安全、监控、限流、路由
6.分布式配置中心
设计思路
暂无
实现思路分析
1. Spring Cloud Eureka(服务治理):
服务治理: 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册和发现。
2.Spring Cloud Ribbon(客户端负载均衡):
Spring Cloud Ribbon 是一个基于Http和TCP的客服端负载均衡工具,它是基于Netflix Ribbon实现的。它不像服务注册中心、配置中心、API网关那样独立部署,但是它几乎存在于每个微服务的基础设施中。包括前面的提供的声明式服务调用也是基于该Ribbon实现的。理解Ribbon对于我们使用Spring Cloud来讲非常的重要,因为负载均衡是对系统的高可用、网络压力的缓解和处理能力扩容的重要手段之一。
3.Spring Cloud Hystrix(服务容错保护):
4.声明式服务调用
Feign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这 是远程方法,更感知不到这是个HTTP请求
5.Spring Cloud Zuul(API网关服务)
基于Spring的微服务结点在能力上没有高低贵贱之分,但是在角色上会分为边缘服务和内部服务两部分。内部服务顾名思义是为对内暴露服务的结点,供架构内部来调用;边缘服务是对外部网络暴露的服务结点,也就是对外API接口。
6.Spring Cloud Config(分布式配置中心):
在分布式系统中,每一个功能模块都能拆分成一个独立的服务,一次请求的完成,可能会调用很多个服务协调来完成,为了方便服务配置文件统一管理,更易于部署、维护,所以就需要分布式配置中心组件了
拓展Demo实现
相关代码如下:
1.启动tomcat
实验效果:
待完成
分析:
待补充
小结:
主要讲述了SpringCound原理和简单实现,里面有许多不足,请大家指正~
参考资料和推荐阅读
欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!~