Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. SRPC

SRPC

Apache-2.0C++v0.10.4

An enterprise-level RPC framework based on C++ Workflow, supporting SRPC, bRPC, tRPC, and Thrift protocols.

GitHubGitHub
2.1k stars407 forks0 contributors

What is SRPC?

SRPC is an enterprise-grade RPC framework built on Sogou C++ Workflow, designed for high-performance, low-latency communication between distributed services. It supports multiple RPC protocols like SRPC, bRPC, tRPC, and Thrift, and handles tens of billions of requests daily in production environments. The framework provides built-in observability, compression, and seamless integration with asynchronous workflows.

Target Audience

C++ developers and engineers building high-throughput, low-latency distributed systems, microservices, or cloud-native applications requiring robust RPC communication.

Value Proposition

Developers choose SRPC for its battle-tested performance in production, multi-protocol interoperability, and deep integration with Sogou Workflow for asynchronous programming. Its built-in support for observability standards like OpenTelemetry reduces instrumentation overhead.

Overview

RPC framework based on C++ Workflow. Supports SRPC, Baidu bRPC, Tencent tRPC, thrift protocols.

Use Cases

Best For

  • Building high-performance microservices in C++
  • Implementing multi-protocol RPC systems (e.g., bRPC, tRPC, Thrift)
  • Developing low-latency distributed systems for search, ads, or recommendations
  • Adding observability (metrics/tracing) to RPC services with OpenTelemetry
  • Creating HTTP+JSON gateways for polyglot service architectures
  • Orchestrating asynchronous RPC calls with workflow patterns

Not Ideal For

  • Teams primarily using languages other than C++ for service development
  • Small-scale or monolithic applications where RPC overhead is unnecessary
  • Projects requiring extensive third-party integrations outside the Sogou ecosystem
  • Rapid prototyping scenarios needing zero-configuration or managed RPC solutions

Pros & Cons

Pros

Production-Proven Scale

Handles tens of billions of daily requests in Sogou's search and ad systems, with detailed benchmarks showing high QPS and low latency under load.

Multi-Protocol Interoperability

Supports SRPC, bRPC, tRPC, and Thrift protocols natively, allowing seamless integration with diverse RPC systems without gateway overhead.

Built-in Observability

Integrates AOP modules for automatic metrics and tracing to OpenTelemetry and Prometheus, reducing manual instrumentation effort.

Workflow Orchestration

Fully compatible with Sogou Workflow for asynchronous task management, enabling complex parallel and series RPC calls with upstream services.

Cons

C++-Locked Core

Native clients and servers are C++-only; the HTTP+JSON gateway is a workaround for polyglot support, adding latency and complexity.

Sogou Ecosystem Dependency

Deep integration with Sogou Workflow creates vendor lock-in, limiting flexibility if migrating to other workflow or RPC frameworks.

Setup and Tooling Hurdles

Requires manual code generation with srpc_generator and protoc, plus specific compilation flags, making initial setup more involved than plug-and-play alternatives.

Frequently Asked Questions

Quick Stats

Stars2,141
Forks407
Contributors0
Open Issues33
Last commit5 months ago
CreatedSince 2020

Tags

#trpc#workflow#high-performance#distributed-systems#low-latency#c-plus-plus#opentelemetry#rpc#rpc-framework#thrift#protobuf#cloud-native

Built With

P
Prometheus
O
OpenTelemetry
T
Thrift
C
C++
P
Protobuf

Included in

C/C++70.6k
Auto-fetched 6 hours ago

Related Projects

bRPCbRPC

brpc is an Industrial-grade RPC framework using C++ Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recommendation etc. "brpc" means "better RPC".

Stars17,597
Forks4,142
Last commit1 day ago
Cap'n ProtoCap'n Proto

Cap'n Proto serialization/RPC system - core tools and C++ library

Stars13,173
Forks1,069
Last commit2 days ago
nanomsgnanomsg

nanomsg library

Stars6,296
Forks1,029
Last commit1 day ago
nngnng

nanomsg-next-generation -- light-weight brokerless messaging

Stars4,663
Forks560
Last commit12 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub