drpc: Decentralized RPC Framework
Peer-to-peer RPC framework built on libp2p with gRPC and gRPC-web support.
Golang TypeScript libp2p gRPC Protobuf
Technical Architecture
drpc explores RPC over libp2p for services that need peer-to-peer transport instead of a central network path.
I used libp2p primitives to adapt gRPC-style communication to decentralized networks, including service discovery and streaming support.
Core Mechanisms
- gRPC Integration: Proxies
gRPCstreams throughlibp2pmultiplexed connections. - Service Discovery: Implements Kad-DHT (Kademlia Distributed Hash Table) for node discovery and routing.
- Bi-directional Streaming: Supports bi-directional streams for real-time state synchronization.
Operational Impact
The architecture is aimed at environments where partition tolerance and service continuity matter more than centralized coordination.