I have not used it in D, but we use Thrift in Java a lot and I've been very happy with it on many levels. it works really well in production. Since Thrift has D bindings as of recently, it may be worth your time to investigate.