文章使用Spring Boot
2.x
版本
文章目录
1. 微服务架构简介
1.1. 什么是分布式
含义:将应用的不同模块部署在不同的服务器
上构成分布式系统
作用:解决网站高并发
带来的问题
1.2. 什么是集群
含义:多台服务器部署相同应用
构成一个集群
作用:通过负载均衡设备共同对外提供服务
1.3. 什么是RPC
RPC的全称是Remote Procedure Call,是一种进程间通信方式
,其允许和才能供需调用另一个地址空间的过程或函数,而不用显示编码这个远程调用的细节。
如两台服务器A,B,一个应用在A服务器上,另一个在B服务器上,由于不在一个内存空间,A服务器上的应用不能直接调用B服务器上应用的函数或方法,这时可以通过使用RPC框架的实现来解决这种问题。
Restful
RESTful是一种架构设计风格,提供了设计原则和约束条件。
SOAP
简单对象访问协议。是一种数据交换协议规范。轻量的、简单的、基于XML协议的规范。其消息基于XML并封装成了服务http协议。
RPC
从一台机器上通过参数传递的方式调用量一台机上上的函数或方法并得到返回结果。
其会隐藏底层的通讯细节,并且是一个请求响应模型,在使用形式上想电泳本地函数一样去调用远程服务器上的函数。
实现框架
RMI实现
利用java.rmi包实现,基于Java远程方法协议(Java Remote Method Protocol)和java的原生序列化Hassian
轻量级remoting onhttp工具。基于HTTP协议,采用二进制编解码,使用简单的方法提供了RMI的功能Thrift
可伸缩的跨语言服务的软件框架。其允许自定义一个描述文件去面熟数据类型和服务接口。根据该文件,编译器方便的生成RPC客户端和服务器通信代码Spring Cloud
微服务家族,其提供了配置管理
、服务发现
、断路器
、路由
、微代理
、时间总线
、全局锁
、决策精选
、分布式回话
等等
1.4. 什么是SOA
将业务系统分解为多个组件,让每个组件都独立提供离散、自治、可复用的服务能力。通过服务的组合和编排实现上层的业务流程。
作用:简化维护、降低整体风险、伸缩灵活
1.5. 什么是微服务
概念:各服务间隔离
、自治
其它特性(单一职责、便捷、异步通信、独立部署)
作用:各服务独立应用,组合服务也可系统应用。
2. Spring Cloud
SpringCloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理
、服务发现
、断路器
、路由
、微代理
、事件总线
、全局锁
、决策竞选
、分布式会话
等等。其是基于Spring Boot的。
3. 服务提供者与消费关系
服务提供者:提供服务被人调用
消费者:调用提供的服务
下一章:Spring Cloud知识点整理 | (二) Eureka服务注册