I know, I should have said &quot;Protobuf + custom connection handling&quot;.<p>Thrift does come with RPC client&#x2F;server code. You can choose between different transports. Example [1].<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;apache&#x2F;thrift&#x2F;blob&#x2F;master&#x2F;lib&#x2F;nodejs&#x2F;examples&#x2F;client.js" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;apache&#x2F;thrift&#x2F;blob&#x2F;master&#x2F;lib&#x2F;nodejs&#x2F;exam...</a>