热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

grpcgolang在win7/8/10下的安装配置(别的系统同样适用)

gRPC是由Google主导开发的RPC框架,使用HTTP2协议并用ProtoBuf作为序列化工具。支持多种语言,之所以采用golang,是因为其特点:C家族,程序员上手容易、动态

gRPC是由Google主导开发的RPC框架,使用HTTP/2协议并用ProtoBuf作为序列化工具。支持多种语言,之所以采用golang,是因为其特点:C家族,程序员上手容易、动态语言,开发效率高,coroutine机制实现、大规模并发方案,标准库完善、部署容易。

 

一、GO语言及项目环境

1、在64位win10下安装go 1.9.2,将go.exe加入PATH变量,在命令行方便访问

 

2、建立测试工程目录,将该目录加入GOPATH环境变量

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

二、protobuf开发环境

1、从 https://github.com/google/protobuf/releases处下载protoc-3.4.0-win32.zip,解压到本地硬盘,bin/protoc.exe用于将.proto文件生成目标语言。

2、由于protoc.exe不支持生成golang,因此需要安装生成golang的插件

go get -ugithub.com/golang/protobuf/proto // golang protobuf 库

go get -ugithub.com/golang/protobuf/protoc-gen-go //protoc --go_out 工具

 

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

3、并将工程目录/bin下的protoc-gen-go.exe拷贝到protoc的解压目录

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

 

三、安装grpc

1、go  get安装方式

网上介绍的go  get安装方式,因golang.org被墙而超时出错:

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

2、手动安装

2.1、在项目工程的src目录下,建立子目录google.golang.org

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

2.2、Git clonegrpc-go到本地,并更名为grpc

D:\tyler.xiang\golang\esl\src>cd  google.golang.org

D:\tyler.xiang\golang\esl\src\google.golang.org>git clone  http://github.com/grpc/grpc-go

D:\tyler.xiang\golang\esl\src\google.golang.org>ren grpc-go  grpc

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)


3、安装grpc需要的库

3.1、建立golang.org/x目录,存放net、text

在工程目录src下建立golang.org/x

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

3.2、git  clone net、text到本地

D:\tyler.xiang\golang\esl\src\golang.org\x>gitclone http://github.com/golang/net

D:\tyler.xiang\golang\esl\src\golang.org\x>gitclone http://github.com/golang/text

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

3.3、git  clone go-genproto到工程目录src/google.golang.org,

D:\tyler.xiang\golang\esl\src\google.golang.org>gitclone http://github.com/google/go-genproto

D:\tyler.xiang\golang\esl\src\google.golang.org>ren go-genproto  genproto

 

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)

4、安装grpc到pkg

在工程目录/src下,执行go  install

D:\tyler.xiang\golang\esl\src>go  install  google.golang.org/grpc

在工程目录/pkg下生成了库文件

grpc-golang在win7/8/10下的安装配置(别的系统同样适用)
推荐阅读
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
author-avatar
卟抛棄D
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有