1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-24 04:22:22 +00:00
2018-06-09 07:26:24 +08:00
..
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-08 22:40:55 +08:00
2018-06-09 07:26:24 +08:00

第四章 RPC和Protobuf

RPC是远程过程调用的缩写Remote Procedure Call通俗地说就是调用远处的一个函数。远处到底有多远呢可能是同一个文件内的不同函数也可能是同一个机器的另一个进程的函数还可能是远在火星好奇号上面的某个秘密方法。因为RPC涉及的函数可能非常之远远到它们之间说着完全不同的语言语言将成为两边的沟通障碍。而Protobuf因为支持多种不同的语言甚至不支持的语言也可以扩展支持其本身特性也非常方便描述服务的接口也就是方法列表因此非常适合作为RPC世界的接口交流语言。本章将讨论RPC的基本用法以及如何针对不同场景设计自己的RPC服务以及围绕Protobuf构造的更为庞大的RPC生态。