温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

golang grpc消息过大怎么解决

发布时间:2022-12-07 16:33:15 来源:亿速云 阅读:203 作者:iii 栏目:编程语言

这篇“golang grpc消息过大怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“golang grpc消息过大怎么解决”文章吧。

解决grpc消息过大问题

今天前端反馈问题,接口报错,然后我到服务器上看到错误日志提示如下:

code = ResourceExhausted desc = grpc: received message larger than max (4998958 vs. 4194304)

意思是:

接收消息大于指定的值,这个值应该是默认的,所以需要设置自定义的值

需要在 rpc client 端设置自定义大小

func NewServiceContext(c config.Config) *ServiceContext {
    return &ServiceContext{
      Config:      c,
     // 此处是rpc client端,用于调用server端
      ConvertRpc: convert.NewConvert(zrpc.MustNewClient(c.ConvertRpcConf, zrpc.WithDialOption(grpc.WithDefaultCallOptions(grpc.MaxCallRecvMsgSize(1024 * 1024 * 10))))),         // 设置接收消息大小
    }
}

golang的优点

golang是一种编译语言,可以将代码编译为机器代码,编译后的二进制文件可以直接部署到目标机器而无需额外的依赖,所以golang的性能优于其他的解释性语言,且可以在golang中使用goroutine来实现并发性,它提供了一个非常优雅的goroutine调度程序系统,可以很容易地生成数百万个goroutine。

以上就是关于“golang grpc消息过大怎么解决”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI