April 29, 2021

177 words 1 min read

storj/drpc

storj/drpc

drpc is a lightweight, drop-in replacement for gRPC

repo name storj/drpc
repo link https://github.com/storj/drpc
homepage
language Go
size (curr.) 555 kB
stars (curr.) 640
created 2019-08-26
license MIT License

DRPC

A drop-in, lightweight gRPC replacement.

Go Report Card Go Doc Beta

Please see:

DRPC is:

  • Simple, at just a few thousands lines of code!
  • Compatible. Works for many gRPC use-cases as-is!
  • Fast. DRPC has a lightning quick wire format
  • Extensible. DRPC is transport agnostic, supports middleware, and is designed around interfaces.
  • Battle Tested. Already used in production for years across tens of thousands of servers.

Compare with gRPC:

BenchmarkUnitary/GRPC-8          	   40166	     29717 ns/op	    8271 B/op	     169 allocs/op
BenchmarkUnitary/DRPC-8          	   53380	     21705 ns/op	    2882 B/op	      39 allocs/op
BenchmarkInputStream/GRPC-8      	 1308865	       836.5 ns/op	     370 B/op	      11 allocs/op
BenchmarkInputStream/DRPC-8      	  449756	      2555 ns/op	      63 B/op	       3 allocs/op
BenchmarkOutputStream/GRPC-8     	 1453718	       910.2 ns/op	     283 B/op	       9 allocs/op
BenchmarkOutputStream/DRPC-8     	  455004	      2571 ns/op	      63 B/op	       3 allocs/op
BenchmarkBidirectionalStream/GRPC-8       113724	     10273 ns/op	     873 B/op	      40 allocs/op
BenchmarkBidirectionalStream/DRPC-8       218518	      5396 ns/op	     128 B/op	       6 allocs/op

Licensing

DRPC is licensed under the MIT/expat license. See the LICENSE file for more.

comments powered by Disqus