黑马程序员技术交流社区
标题:
SpringCloud 简介
[打印本页]
作者:
624694683
时间:
2018-12-17 09:23
标题:
SpringCloud 简介
1.什么是微服务架构
将一个原本独立想系统差分成多个小型服务
并且没个服务都维护着自身的数据存储,业务开发,自动化测试案例以及独立部署机制
由于有了轻量级的通信协作基础,所以微服务可以使用不同的语言来编写
服务之间通过基于HTTP的RESTful API进通信协作
在微服务中,通常会使用以下两种服务调用方式:
基于HTTP的RESTful 或轻量级的消息发送协议
通过在轻量级消息总线上传递消息,类似RabbitMQ
在微服务架构中,由于服务不在一个进程中,组件间的通信模式发生了改变,若仅仅将原本的进程内的方法调用改成RPC方式,会导致服务之间发生繁琐的通信
2.SpringCloud 包含了多个子项目:
SpringCloud Config:配置管理工具,支持GIT存储配置内容,可以实现应用配置的外部化存储,支持客户端配置信息刷新,加密、解密等配置
SpringCloud Netflix:核心组件,包含了多个开源套件
Eureka:服务治理组件,包含服务注册中心,服务注册于发现
Hystrix:容错管理组件,实现断路器模式,帮助服务依赖出现的延迟为故障提供强大通错能力
Ribbon:客户端负载均衡服务调用组件
Feign:基于Ribbon和Hystrix的什么式服务调用组件
Zull:网关组件,提供智能路由,访问过滤等功能
Archaius:外部化配置组件
SpringCloud Bus:事件,消息总线,用于传播集群中的状态变化或事件,以触发后续的操作,如果动态刷新配置
SpringCloud Cluster:针对zookeeper,redis,Hazalcast,Consul的选举算法和通用状态模式的实现
SpringBoot是实现SpringCloud的基础
properties的优先级比yaml高
spring-boot-starter-parent:SpringBoot的基础依赖,如配置文件的位置
spring-boot-starter-web:全栈web开发模块,包含嵌入式Tomcat,SpringMVC
spring-boot-starter-test:通用测试模块,包含JUnit等
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2