1、操作系统选择       这里,你可以根据自己所用操作系统进行选择,不过我可以告诉你编译时间,你自己分辨到底未来用哪个吧。恰好我自己的机器一直是win7,想着升级一下吧,就升级了win10最新版本,后来又装了deepin双系统。所以有如下的统计,可能不对,大家多做分析,仅供参考。      &n
转载 2024-07-23 13:01:42
20阅读
下载grpc通用编译器 下载地址:https://github.com/protocolbuffers/protobuf/releases 下载对应的格式,然后将文件加入环境变量 安装go专用的protoc的生成器 安装命令:go get -v github.com/golang/protobuf/ ...
转载 2021-10-13 16:38:00
201阅读
2评论
gRPC是google开源高性能分布式RPC框架,支持http/2 双向数据流传输及Protobuff,可以在任何环境下运行。 它可以有效地将数据中心内和跨数据中心的服务与可插拔支持进行负载均衡,跟踪,运行状况检查和身份验证。 它也适用于分布式计算,将设备,移动应用程序和浏览器连接到后端服务。核心功能:10种语言的语言客户端库高效的线路和简单的服务定义框架基于http / 2传输的双向流式传输可插
转载 2024-06-14 11:12:38
199阅读
1,关于grpc-go golang 能够能够做grpc服务端和client。 官网的文档: ://.grpc.io/docs/quickstart/go.html https://github.com/grpc/grpc-go 和之前写的java的grpcclient调用同样。也须
转载 2018-04-04 19:54:00
243阅读
2评论
最新HTTP/2标准已经发布,是基于谷歌QUIC的技术升级而成。虽然标准已经发布,但是目前还鲜有应用支持,那么有没有方法进行技术尝鲜呢?答案是肯定的。本文虫虫给大家介绍一个Golang Web服务器应用Algernon,作为一个单文件的Golang应用内置了HTTP/2,Lua,Markdown,Pongo2,HyperApp,Amber,Sass(SCSS),GCSS,JSX,BoltDB的功能
gRPC入门gRPC是Google公司基于Protobuf开发的跨语言的开源RPC框架。gRPC基于HTTP/2协议设计,可以基于一个HTTP/2链接提供多个服务,对于移动设备更加友好。本节将讲述gRPC的简单用法。1 gRPC技术栈Go语言的gRPC技术栈图所示:最底层为TCP或Unix Socket协议,在此之上是HTTP/2协议的实现,然后在HTTP/2协议之上又构建了针对Go语言的gRPC
转载 2024-03-01 22:24:21
145阅读
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、Golang interface 是什么?二、为什么有 interface?1.编写泛型算法2.隐藏具体实现3.提供拦截点(providing interception points)4.多态(polymorphism)三、非入侵式四、类型断言总结参考 前言interface 是GO语言的基础特性之一。可以理解为一种
转载 2024-04-29 09:40:53
34阅读
文章目录前言一、什么是负载均衡,负载均衡的策略有哪些?0.负载均衡之前先设置一下动态端口python篇golang篇1.集中式load balance2.进程内load balance3.独立进程load balance二、常用负载均衡策略1.轮询(Round Robin)法2.随机法3.源地址哈希法4.加权轮询(Weight Round Robin)法5.加权随机(Weight Random)
转载 2024-05-16 07:01:29
164阅读
今天本来想用dart做一些native的小工具,但是准备开始写的时候才发现dart的生态的确还欠缺很多,dart连获取自身运行时内存信息的方法都没有,别提执行shell或其他监控了。那么,如果dart自身不行,能不能通过已有的工具组合起来为dart提供服务呢?毕竟dart的 isolate 自动释放内存和安全的内存隔离是一个亮点,而且还能通过主线程控制其他的isolate空间,等于一个 FPM,如
转载 8月前
26阅读
多线程+同步阻塞模型在我们的游戏项目中使用的golang服务开发方式如下1.多线程逻辑2.同步阻塞. 也就是说, 每个人一个线程(goroutine), io线程=逻辑线程这种方式的优点:1. 同步阻塞方式与人的思维方式类同2. 逻辑处理性能有一定提升在大规模使用这种模式编写逻辑后, 我们发现了这种模式只有1个缺点: 编写者需要处理多线程关系但这本身确实直接致命的, 回想C++时代, 多线程处理
一、方法1:主要用到的方法是http包的FileServer,参数很简单,就是要路由的文件夹的路径。package main import ( "fmt" "net/http" ) func main() { http.Handle("/", http.FileServer(http.Dir("./"))) e := http.ListenAndServe(":8080", nil) fmt.Pr
作者近期在写一个项目时遇到了这样的需求:调用一个库API函数,函数内部又会拉起若干个后台goroutine。这时后台goroutine如果遇到错误想要及时通知库的使用者将不会是一件容易的事情,因为这是一个异步通知error的方法。作者最终的解决方案概括为:使用者另启一个goroutine监听Err channel,库后台goroutine出现的错误将直接发送至Err channel中。作者以自己项
在构建微服务时,使用服务发现可以减少配置的复杂性,本文以go-micro为微服务框架,使用consul作为服务发现服务,使用gin开发golang服务。使用gin 的原因是gin能够很好的和go-micro进行集成。本文主要介绍服务注册和发现的实现关于如何搭建consul服务可以移步: ubuntu+docker+consul安装部署及使用www.jianshu.com
【小宅按】2007年,谷歌的一个团队在调研计算机编程语言时,发现有数百种可用于开发软件的语言,但没有一种能提供谷歌真正需要的特性。有些语言太过底层,有些又太过复杂,有些特性对他们来说反而会碍手碍脚。谷歌的开发人员想要的语言要简单到可以在几个小时内学会,但又要复杂到足以应付现代互联网的信息流。他们的解决方案就是 Go 语言,这门语言对于 C 语言、Java 或 JavaScript 程序员来说——换
Remote Procedure Call (RPC) 是一种使用TCP协议从另一个系统调用应用程序功能执行的方法。Go有原生支持RPC服务器实现,本文通过简单实例介绍RPC的实现过程。gRPCgRPC远程过程调用框架是基于动作的模式,类似远程调用微服务。这使得gRPC成为一种围绕Protobufs构建的进程间通信(IPC)协议,用于处理客户端和服务器之间的消息传递。gRPC非常适合密集而高效的通
转载 2024-06-09 06:37:48
31阅读
gRPC是Google发起的一个开源RPC框架,使用HTTP/2传输协议,使用Protocol Buffers编码协议,相比RESTful框架的程序性能提高不少,而且
原创 2024-04-23 10:44:21
91阅读
都是GFW的错 导致我们无法在天朝局域网内 下载http://google.golang.org和http://golang.org包下的依赖库 不多说了 前提是你已经安装好Golang 配置好GOROOT GOBIN GOPATH环境变量 并且已经安装好GoLand IDE 步骤1 安装glide ...
转载 2021-10-15 11:49:00
247阅读
2评论
今天是golang专题的第11篇文章,我们一起来聊聊golang当中多态的这个话题。如果大家系统的学过C++、Java等语言以及面向对象的话,相信应该对多态不会陌生。多态是面向对象范畴当中经常使用并且非常好用的一个功能,如果你之前没有学过的话也没有关系,我们用一个简单的例子来说明一下。多态主要是用在强类型语言当中,像是Python这样的弱类型语言,变量的类型可以随意变化,也没有任何限制,其实区别不
golang GRPC mock1.)前置条件go install github.com/golang/protobuf/protoc-gen-go go install github.com/carvalhorr/protoc-gen-mock2.) 生成mock文件proto文件greeter.proto如:syntax = "proto3"; package carvalhorr.gree
转载 2021-05-18 09:54:56
679阅读
2评论
相关链接: grpc: https://grpc.io/docs/languages/go/quickstart/ protobuf: https://protobuf.dev/programming-guides/proto3/ p
原创 2023-11-17 11:36:14
73阅读
  • 1
  • 2
  • 3
  • 4
  • 5