A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 624694683 中级黑马   /  2018-12-17 09:23  /  803 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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等

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马