文件名称:ttrpc:适用于低内存环境的GRPC
文件大小:46KB
文件格式:ZIP
更新时间:2024-05-25 02:00:30
go golang stream protocol grpc
ttrpc 适用于低内存环境的GRPC。 现有的grpc-go项目在导入包和运行时需要大量内存开销。 尽管这对于具有低密度要求的许多服务非常有用,但是在单台计算机上或在具有少量内存的计算机上运行大量服务时,这可能是个问题。 使用相同的GRPC定义,该项目减少了二进制文件的大小和所需的协议开销。 通过net/http2 grpc所使用的net/http , net/http2和grpc软件包来实现此目的,将其替换为轻量级的框架协议。 结果是较小的二进制文件使用了较少的驻留内存,并且具有与GRPC相同的易用性。 请注意,尽管该项目支持生成协议的任一端,但是生成的服务定义将与常规GRPC服务不兼容,因为它们使用的协议不同。 用法 创建一个gogo虚荣二进制文件(有关启用了ttrpc插件的示例,请参阅 建议使用来为此项目构建protobuf,但是如果需要,可以直接与一起使用。 与GRPC
【文件预览】:
ttrpc-master
----.gitignore(275B)
----go.mod(340B)
----services.go(4KB)
----handshake.go(2KB)
----server.go(10KB)
----channel.go(4KB)
----server_test.go(16KB)
----LICENSE(11KB)
----unixcreds_linux.go(3KB)
----go.sum(9KB)
----.github()
--------workflows()
----codec.go(1KB)
----README.md(3KB)
----plugin()
--------generator.go(4KB)
----example()
--------doc.go(676B)
--------Protobuild.toml(2KB)
--------example.proto(496B)
--------example.pb.go(18KB)
--------cmd()
----metadata.go(3KB)
----client.go(8KB)
----services_test.go(889B)
----channel_test.go(2KB)
----types.go(2KB)
----metadata_test.go(3KB)
----client_test.go(2KB)
----interceptor.go(2KB)
----cmd()
--------protoc-gen-gogottrpc()
----config.go(2KB)