RPC&REST&HAL

1、容器技术,是一种利用容器实现虚拟化的方式,无法归属到全虚拟化、部分虚拟化和半虚拟化中的任意一个,它是一个操作系统级的虚拟化方法。

2、微服务架构本质上是分布式系统。


3、RPC远程过程调用,是一种典型的分布式节点间同步通信的实现方式。

1)客户端通过客户代理存根,传递函数参数,向服务器端发起函数调用。服务器端通过服务器代理存根,接收到客户端的请求后,对请求进行处理,并在结束后向客户端返回响应,从而完成一次通信。

2)代理存根分别存在于客户端与服务器端环境中,为客户端与服务端应用程序提供透明的调用和响应机制。

3)远程方法调用是远程过程调用的一种面向对象的实现

4)远程过程调用的弊端:耦合度高和灵活性差

 

4、REST:一种以资源为核心、以HTTP为操作方式的,与语言无关、平台无关的服务间的通信机制。

1)四个关键部分:

         a、资源:指对某类信息实体的抽象

         b、表述:对资源在某个特定时刻的状态的描述

         注:表述应该在HTTP请求的头信息中用Accept和Content-Type字段指定

         c、状态转移:指在客户端同服务端交互的过程中,客户端能够通过资源的表述,实现操作资源的目的

         d、统一接口

2)REST的不足

         a、如何标准化资源结构

         b、如何处理资源的相关链接

         注:JSON最大的遗憾在于没有对超链接处理做内置的支持

5、HAL:是一种轻量级超文本应用描述协议。实现基于REST,并有效地解决了REST中资源结构标准化和如何有效定义资源链接的问题。

1)在HAL中,任何服务端的响应都被定义成一种资源

2)每个资源中,包含三个标准部分

         a、状态:指资源本身固有的属性

         b、链接:定义了与当前资源相关的一组资源的链接的集合

         c、子资源:在当前资源的内部,其嵌套资源的定义

3)HAL浏览器能够将资源的每一部分,通过可视化的方式显示出来

 

6、消息队列

1)核心特征:持久性、排队标准、安全策略、清理策略、处理通知

2)消息队列的访问方式:

         a、拉模式:要求消费者定期检查队列上的消息

         b、推模式:每当发布者将消息添加到队列种时,会通过某种机制通知消费者

3)消息队列的优点:服务间解耦、异步通信、消息的持久化以及恢复支持

4)消息队列的缺点:实现复杂度增加、平台或者协议依赖、维护成本高

猜你喜欢

转载自blog.csdn.net/kakaka2011/article/details/79630068