On Tuesday, 6 June 2017 at 01:01:34 UTC, Timothee Cour wrote:
Is there a good RPC framework for D?

Last time I needed one, I used Thrift. D support in Thrift is maintained upstream. Unfortunately, the version available in dub is really old. Also unfortunately, it's std.socket only -- no vibe.d.

https://thrift.apache.org/docs/features
https://github.com/apache/thrift/tree/master/lib/d

requirements:
* efficient (no json/xml)

Thrift uses a binary format relatively similar to protocol buffers.

* supports at least sending/receiving raw bytes

Thrift supports a `binary` data type representing a byte array.

Additional requirements: supports streaming data (either input or output or both)

I'm not sure what you mean by "streaming data", precisely, but Thrift supports multiple RPCs per connection. This alone made a huge difference in my testing: a Thrift server on an AWS t2.micro managed 2400 requests per second across ten clients, while HTTP handlers returning a fixed string only managed 75.

and timeouts.

Definitely supports timeouts.

Reply via email to