Deprecated. fabric-rpc is no longer maintained. This use case is now covered by new project grpc-bridge. After grpc core supports AF_UNIX PR, grpc cpp can use asp.net proxy on unix socket. Tls for grpc can be handled by asp.net proxy server.
fabric-rpc was developed to have grpc style server/client code gen but works with windows cert store.
RPC framework based on FabricTransport in Service Fabric.
Generate server and client code from proto file, similar to grpc.
Required:
- service fabric runtime installation. See get-started
Auto downloaded by cmake:
- fabric-metadata. Service fabric cpp COM headers.
- protobuf
The fabric_rpc.lib and all support headers do not depend on protobuf.lib and header, so user can intergrate fabricrpc with any protobuf version. The generated fabricrpc code depends on protobuf lib and headers. User needs to generate protobuf cpp code for fabricrpc.proto file in order to compile the generated fabricrpc code. See the examples for details.
cmake . -B build
cmake --build build
See Tutorial.
The spec for networking protocol on top of FabricTransport is here ProtocolSpec
Only build from source is supported
The Fabric RPC is covered by MIT license.
Code generated by the fabric_rpc_cpp_plugin is owned by the owner of the input file used when generating it. But the generated code requires linking with the Fabric RPC support library, which is covered by MIT license, and requires linking with protobuf with google's license.