go

918. 【Golang】解决:error: grpc: re

2024-01-20  本文已影响0人  七镜

说明

在基于gorm开发应用时,为了方便获取表关联的数据,偶尔会使用这样的写法:Preload(clause.Associations)。这个写法能预加载和该表关联的所有关系表,非常方便。但这里有个坑:如果一张表关联了另一张无关紧要的大表,那么会造成数据量特别庞大,不但查询时间长,还可能导致无法顺利通过网络请求发送给客户端。

比如最近七镜使用grpc时,客户端就遇到了这么个错误:

error: grpc: received message larger than max (4339743 vs. 4194304)

解决办法

服务端做表关联数据时,需要哪些表就写哪些表,不要图简单写:Preload(clause.Associations)。比如我要一个名叫BindProfiles的关联表,那就写 Preload(clause.Associations)

上一篇 下一篇

猜你喜欢

热点阅读