Maison >développement back-end >Golang >Le message Golang grpc est trop volumineux ? Apprenez-vous à le résoudre rapidement !

Le message Golang grpc est trop volumineux ? Apprenez-vous à le résoudre rapidement !

藏色散人
藏色散人avant
2022-12-07 15:45:425817parcourir

Cet article est écrit par la rubrique tutoriel golang pour vous présenter comment résoudre le problème des messages grpc excessifs ? J'espère que cela aidera ceux qui en ont besoin !

Le message Golang grpc est trop volumineux ? Apprenez-vous à le résoudre rapidement !

Résoudre le problème des messages grpc trop volumineux

Aujourd'hui, le front-end a signalé une erreur et l'interface a signalé une erreur. Ensuite, je suis allé sur le serveur et j'ai vu l'invite du journal des erreurs comme suit :

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

signifie :

Le message reçu est plus grand que la valeur spécifiée, cette valeur doit être la valeur par défaut, vous devez donc définir une valeur personnalisée

Vous devez définir une taille personnalisée côté client rpc

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))))),         // 设置接收消息大小
    }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer