首页 > 其他 > 详细

笔记74 微服务笔记1

时间:2018-07-31 14:25:20      阅读:145      评论:0      收藏:0      [点我收藏+]

一、远程调用

  无论是微服务还是SOA,都面临着服务间的远程调用。常见的远程调用方式有两种:RPC和Http

1.RPC(Remote Procedure Call 远程过程调用)

是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序。那么如何实现RPC?

<1>要实现远程调用,肯定需要通过网络传输数据。A程序提供服务,B程序通过网络将请求参数传递给A,A本地执行后得到结果,再将结果返回给程序B。(采用哪种传输协议?传输的数据格式是什么?)

<2>对调用过程进行封装。

注:采用动态代理进行封装。

假设要对UserService中的queryUserById方法进行调用,那么需要定义一个UserService的接口,里面包含方法queryUserById,然后用动态代理来代理这个接口,当有请求调用queryUserById这个方法时,就启用代理,在动态代理的内部建立socket对请求进行接收和发送。

2.HTTP

Http协议:超文本传输协议,是一种应用层协议。规定了网络传输的请求格式、响应格式、资源定位和操作的方式等。但是底层采用什么网络传输协议,并没有规定,不过现在都是采用TCP协议作为底层传输协议。说到这里,大家可能觉得,Http与RPC的远程调用非常像,都是按照某种规定好的数据格式进行网络通信,有请求,有响应。没错,在这点来看,两者非常相似,但是还是有一些细微差别。

二、遇到的问题

1.通用mybatis中,不能使用int,必须使用Integer。

 

三、

笔记74 微服务笔记1

原文:https://www.cnblogs.com/lyj-gyq/p/9395359.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!