微服务架构
1,微服务架构
微服务架构的提出者:马丁福勒
https://martinfowler.com/articles/microservices.html
简而言之,微服务体系结构风格[1]是一种将单个应用程序开发成一组小型服务的方法,每个服务都在自己的进程中运行,并与轻量级机制(通常是 HTTP资源API)进行通信。这些服务是围绕业务能力构建的,可以通过完全自动化的部署机器独立部署。对这些服务的集中管理是最低限度的,这些服务可以用不同的编程语言编写,并使用不同的数据存储技术
1, 微服务架构只是一个样式,一个风格
2, 将一个完整的项目,拆分成多个模块去分别开发
3, 每一个模块都是单独运行在自己的容器中
4, 每一个模块都是需要相互通信的。Http,RPC,
5, 每一个模块之间是没有依赖关系的,单独的部署
6, 可以使用多种语言开发不同的模块
总结:将复杂臃肿的单体应用进行细粒度的划分,每个拆分出来的服务各自打包部署
SpringCloud介绍
SpringCloud是微服务架构落地的一套技术栈
SpringCloud中大多数的技术都是基于Netflix公司的技术进行的二次研发
1,SpringClound的中文社区网站:http://springcloud.cn
2,SpringCloud的中文网:http://springcloud.cc
八个技术点:
1, Eureka -服务的注册与发现
2, Robbin -服务之间的负载均衡
3, Fegin -服务之间的通讯
4, Hystrix -服务的线程隔离以及断路器
5, Zuul -服务网关
6, Stream -实现MQ的使用
7, Config -动态配置
8, Sleuth -服务追踪