[转载]Ubuntu安装GRPC

  • 一、GRPC简介

        RPC的中文翻译是远程过程调用,是在服务器端程序设计常用的一种技术。对于本地过程调用,要做某件事,就在本机上执行某个代码段;对于RPC来说,服务的使用者和提供者可以位于不同的计算机上,客户端(client)只需要告诉服务器端(server)要做什么事情,这一请求通过网络发送给server,server上执行完成之后把结果返回给客户端。

Google 2015开源了一个RPC框架GRPC。

GRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持。GRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。GRPC采用了protocol buffer来做数据的序列化与反序列化。Protocol Buffers (ProtocolBuffer/ protobuf )是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。现阶段支持C++、JAVA、Python等三种编程语言。

对于开发者而言:

       1、需要使用protobuf定义接口,即.proto文件。

       2、使用compile工具生成特定语言的执行代码,比如JAVA、C/C++、Python等。类似于thrift,为了解决跨语言问题。

       3、启动一个Server端,server端通过侦听指定的port,来等待Client链接请求,通常使用Netty来构建,GRPC内置了Netty的支持

       4、启动一个或者多个Client端,Client也是基于Netty,Client通过与Server建立TCP长链接,并发送请求;Request与Response                        均被封装成HTTP2的stream Frame,通过Netty Channel进行交互。    

  • 二、安装依赖

1、安装 pkg-config

sudo apt-get install pkg-config

2、安装依赖(autoconf、automake、libtool、make、g++、unzip、libgflags-dev、libgtest-dev、clang、libc++-dev)

sudo apt-get install autoconf automake libtool make g++ unzip
sudo apt-get install libgflags-dev libgtest-dev
sudo apt-get install clang libc++-dev

3、下载GRPC

git clone https://github.com/grpc/grpc.git
cd grpc
git submodule update --init  //更新第三方源码

4、安装protobuf

cd third_party/protobuf/
git submodule update --init --recursive   //确保克隆子模块,更新第三方源码
./autogen.sh       //生成配置脚本
./configure        //生成Makefile文件,为下一步的编译做准备,可以加上安装路径:--prefix=path
make               //从Makefile读取指令,然后编译
make check         //可能会报错,但是不影响
sudo make install  //从Makefile读取指令,安装到指定位置,默认为/usr/local/,也可以指定安装目 
                   //录:--prefix=path。卸载的命令为make uninstall。make clean:清除编译 
                   //产生的可执行文件及目标文件(object file,*.o)。make distclean:除了清
                   //除可执行文件和目标文件外,把configure所产生的Makefile也清除掉。//
sudo ldconfig      // 更新共享库缓存
which protoc       // 查看软件的安装位置
protoc --version   //检查是否安装成功

5、安装GRPC

cd ../..
make                    //从Makefile读取指令,然后编译
sudo make install       //从Makefile读取指令,安装到指定位置,默认为/usr/local/,这里可以加 
                        //上安装路径:prefix=/usr/local/

6、测试用例

cd examples/cpp/helloworld/
make                 //编译
./greeter_server     //服务器
./greeter_client     //客户端(重新开一个服务器连接)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值