SOA思想

SOA思想介绍

面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构件在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。

 

 

RPC(统称/思想)

 RPC介绍

RPC是远程过程调用(Remote Procedure Call)的缩写形式。由不同的服务之间进行的通讯就称之为RPC,RPC通讯用户无需了解协议的细节.像调用本地服务一样简单. RPC调用本质就是代理思想的应用.

总结: 服务A想要完成某项任务,但是自己手中没有该资源,则通知服务B 帮我去完成该操作. 这样的操作方式称之为RPC

注册中心

现有项目业务分析

说明:
1.使用传统的架构设计,所有的请求都经过NGINX负责中转,则nginx负载很大,如果nginx出现了问题,则直接影响用户.
2.如果服务器的数量改变了,则必然要修改nginx的配置文件.
需求: 1.保证nginx负载压力不要太高.
2.如果服务器数量发生变化,则可以自动的更新配置.,无需人为的干预

 

 

注册中心原理说明

 

 原理说明:
1).当服务器启动时,会将自己的服务名称/IP:PORT写入注册中心.
2).当注册中心接收提供者数据时,会动态的维护服务列表数据.
3).当消费者服务器启动时,会链接注册中心.获取服务列表数据.
4).当请求注册中心之后,则将服务列表保存到本地(消费者内存中),方便以后使用.
5).根据已知的服务提供者 利用负载均衡机制挑选其中一个进行访问.
6).当注册中心利用心跳检查机制发现服务提供者宕机时,会"同步更新"注册列表,并且"同步所有消费者的服务列表".

为什么集中的节点数量是奇数台

公式: 剩余的主节点 > N/2
分析:
1个节点能否搭建集群? 1-1 > 0.5 假 不能搭建集群
2个节点能否搭建集群? 2-1 > 1 假 不能搭建集群
3个节点能否搭建集群? 3-1 > 1.5 真 可以搭建集群
4个节点能否搭建集群> 4-1 > 2 真 可以搭建集群

分析集群宕机的条件:
3个节点最多允许宕机1台. 奇数
4个节点最多允许宕机1台 偶数
奇数台和偶数台容灾能力相同.所以为了节省资源,一般集群都是奇数台.

结论:1).搭建集群最小单位 3台.
2).一般集群搭建都是奇数台.

ZK选举机制

说明: zk选举采用最大值(myid)优先的机制.

启动过半(7台启动4台,9台启动5台,最小是3台)

面试题:
如果zk中有7台服务器.编号分别为1-7,并且依次启动.
问题1:谁当主机??? 4当主机
问题2: 哪几台永远不能当主机??? 123永远不能当主机.

 

posted @ 2020-08-19 20:42  wjcbk  阅读(258)  评论(0编辑  收藏  举报