From dc5d6cb4c4c84efa0a6fd09b02c7639e531ba7f3 Mon Sep 17 00:00:00 2001 From: xiemengjun Date: Fri, 12 Oct 2012 23:16:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BA=86RPC=E7=9A=84?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 8.4.md | 385 +++++++++++++++++++++++++++++++++++++++++++++ 8.5.md | 1 + images/.DS_Store | Bin 0 -> 6148 bytes images/8.4.rpc.png | Bin 4575 -> 78730 bytes 4 files changed, 386 insertions(+) create mode 100644 images/.DS_Store diff --git a/8.4.md b/8.4.md index 11a8a4ad..31dca74c 100644 --- a/8.4.md +++ b/8.4.md @@ -1,4 +1,389 @@ #8.4 RPC +前面几个小节我们介绍了基于Socket和HTTP来编写应用,通过介绍我们了解了Socket和HTTP使用类似消息传递的模式,客户端发送一个消息到服务端,然后一般服务器端都会有一定的返回信息。客户端和服务端都需要约定交互的消息格式,双方都需要对这种消息能够解析。但是很多独立的应用不会使用这种消息传递的模式,而是采用类似函数调用的方式,这种方式应用通过调用带有一串参数的函数,然后返回一组值。 + +RPC就是想实现函数调用模式的网络化。客户端就像调用本地函数一样,然后客户端把这些参数打包之后通过网络传递到服务端,服务端解包到处理过程中执行,然后执行的结果反馈给客户端。 + +RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。 + +##RPC工作原理 + +![](images/8.4.rpc.png?raw=true) + +运行时,一次客户机对服务器的RPC调用,其内部操作大致有如下十步: + +- 1.调用客户端句柄;执行传送参数 +- 2.调用本地系统内核发送网络消息 +- 3.消息传送到远程主机 +- 4.服务器句柄得到消息并取得参数 +- 5.执行远程过程 +- 6.执行的过程将结果返回服务器句柄 +- 7.服务器句柄返回结果,调用远程系统内核 +- 8.消息传回本地主机 +- 9.客户句柄由内核接收消息 +- 10.客户接收句柄返回的数据 + +##Go RPC +Go标准包里面已经支持了RPC,而且支持三个级别的RPC:TCP、HTTP、JSONRPC。但Go的RPC包是独一无二的RPC,他和传统的RPC系统不一样,Go的客户端只能和Go的服务端交互,因为他们的交互采用了Go的Gob编码。 + +Go RPC的函数只有符合下面的条件才能被远程访问,不然会被忽略,详细的要求如下: + +- 函数必须是导出的(首字母大写) +- 必须有两个导出类型的参数, +- 第一个参数是接收的参数,第二个参数是返回给客户端的参数,第二个参数必须是指针类型的 +- 函数还要有一个返回值error + +举个例子,正确的RPC函数格式如下: + + func (t *T) MethodName(argType T1, replyType *T2) error + +T、T1和T2类型必须能被`encoding/gob`包编解码。 + +任何的RPC都需要通过网络来传递数据,Go RPC可以利用HTTP和TCP来传递数据,利用HTTP的好处是可以直接复用`net/http`里面的一些函数。详细的例子请看下面的实现 + +###HTTP RPC +http的服务端代码实现如下: + + package main + + import ( + "errors" + "fmt" + "net/http" + "net/rpc" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + rpc.HandleHTTP() + + err := http.ListenAndServe(":1234", nil) + if err != nil { + fmt.Println(err.Error()) + } + } + +通过上面的例子我们看到我们注册了一个Arith的RPC服务,然后通过`rpc.HandleHTTP`函数把该服务注册到了HTTP协议上,然后我们就可以利用http的方式来传递数据了。 + +请看下面的客户端代码: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server") + os.Exit(1) + } + serverAddress := os.Args[1] + + client, err := rpc.DialHTTP("tcp", serverAddress+":1234") + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +我们把上面的服务端和客户端的代码分别编译,然后先把服务端开启,然后开启客户端,输入代码,就会输出如下信息: + + $ ./http_c localhost + Arith: 17*8=136 + Arith: 17/8=2 remainder 1 + +通过上面的调用我们看到参数和返回值是我们定义的结构体,在服务端我们把他们当做调用函数的参数类型,在客户端作为`client.Call`的参数。客户端最重要的就是这个`Call`函数,他三个参数,第一个参数是调用对象的函数,第二个参数是传递的参数,第三个参数是返回的参数(注意是指针类型),通过上面服务端和客户端的代码例子我们发现,写Go的RPC相当的简单,调用也很方便。 +###TCP RPC +上面我们实现了基于HTTP协议的RPC,接下来我们要实现基于TCP协议的RPC,服务端的实现代码如下所示: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + rpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +上面这个代码和http的服务器对比,唯一不同的就是这边是采用了TCP,然后需要自己控制连接,这个连接通知给rpc来处理。 + +而且我们可以发现这是一个阻塞型的单用户的程序,如果想要实现多并发,那么可以使用goroutine来实现,我们前面在socket小节的时候已经介绍过如何处理goroutine。 +下面展现了TCP实现的RPC客户端: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + os.Exit(1) + } + service := os.Args[1] + + client, err := rpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +这个客户端代码和http的客户端代码对比,唯一的区别一个是DialHTTP,一个是Dial(tcp),其他处理一模一样。 + +###JSON RPC +JSON RPC是数据编码采用了JSON,而不是gob编码,其他和上面介绍的RPC概念一模一样,下面我们来看Go标准包里面如何实现JSON RPC,请看服务端代码的实现: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + jsonrpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +我们可以发现上面的代码是基于TCP协议的,目前只支持基于TCP协议的方式,不支持HTTP方式。 + +请看客户端的实现代码: + + package main + + import ( + "fmt" + "log" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + log.Fatal(1) + } + service := os.Args[1] + + client, err := jsonrpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +##总结 +Go的标准包已经对RPC支持的非常好,这样就可以开发很多分布式的Web应用,通过上面HTTP、TCP、JSON RPC的实现,我们可以领会到这一点。但唯一遗憾的是目前Go标准包里面不支持SOAP RPC协议,当然第三方开源包有在实现类似的东西,我们也可以找到相应的开源代码。 + + + ## links * [目录]() * 上一节: [REST](<8.3.md>) diff --git a/8.5.md b/8.5.md index 37266ac7..b13a39cf 100644 --- a/8.5.md +++ b/8.5.md @@ -1,4 +1,5 @@ #8.5 小结 +这一章我们介绍了目前流行的集中Web开发方式,第一小节介绍了网络编程中非常重要的Socket编程,因为现在云计算时代,网络通信是唯一的也是必要的一种方式,那么通过网络来进行数据的交流是多么的重要,Socket就是交流的公路,你只有了解了这条路的方向才能开快车。第二小节介绍了目前流行的HTML5中一个重要的特性WebSocket,通过这个可以实现服务器的主动推,可以简化以前ajax轮询的模式。第三小节介绍了REST编写模式,这也是目前很多大公司开发API的实现方式,这种模式特别适合来开发API,结合目前移动的快速发展,我觉得将来会是一个潮流。第四小节介绍了RPC的编程模式,可以实现分布式的应用过程实现。Go对于上面四种模式都很好的支持了,Go的`net`包下面基本实现了所有网络编程的函数。如果你想更加深入的了解里面是怎么实现的,可以尝试阅读这个包下面的源码。 ## links * [目录]() * 上一节: [RPC](<8.4.md>) diff --git a/images/.DS_Store b/images/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 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 U?mY*jpEH14@H?=VYPK=|19XYJ`~Uy|