Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. Sogou Workflow

Sogou Workflow

Apache-2.0C++v1.0.0

A C++ parallel computing and asynchronous networking framework for building high-performance, high-concurrency backend services.

GitHubGitHub
14.3k stars2.6k forks0 contributors

What is Sogou Workflow?

Sogou C++ Workflow is a C++ parallel computing and asynchronous networking framework used to build high-performance backend services. It handles networking, computation, and file IO tasks within unified workflows, supporting protocols like HTTP, Redis, MySQL, and Kafka. The framework is designed to manage complex asynchronous operations and concurrency structures efficiently.

Target Audience

C++ backend developers building high-concurrency online services, microservice architectures, or custom RPC systems. It is particularly suited for teams requiring enterprise-grade performance and structured asynchronous programming.

Value Proposition

Developers choose Sogou C++ Workflow for its proven scalability in production (handling over 10 billion daily requests), its integrated approach to networking and computing tasks, and its lightweight design without dependencies on boost or asio. The framework's structured concurrency model and simplified memory management reduce the complexity of asynchronous C++ development.

Overview

C++ Parallel Computing and Asynchronous Networking Framework

Use Cases

Best For

  • Building HTTP servers and asynchronous clients for multiple protocols
  • Implementing custom network protocols and RPC systems
  • Creating parallel computing workflows with DAG structures
  • Developing high-concurrency backend services with complex networking and computing interactions
  • Constructing microservice architectures with built-in service governance
  • Performing asynchronous file IO operations on Linux systems

Not Ideal For

  • Projects prioritizing rapid prototyping in higher-level languages like Python or Go over C++ performance
  • Teams preferring synchronous I/O models or simpler concurrency without explicit callback mechanisms
  • Environments requiring seamless cross-platform development, as Windows support is maintained in a separate branch
  • Applications needing out-of-the-box support for protocols like WebSocket or gRPC without custom implementation

Pros & Cons

Pros

Enterprise-Proven Scalability

Powers Sogou's core services handling over 10 billion daily requests, demonstrating reliability in high-concurrency production environments as stated in the README.

Unified Async Framework

Integrates networking, computation, and file IO tasks into a single workflow with support for series, parallel, and DAG structures, simplifying complex asynchronous programming.

Lightweight No-Dependency Design

Uses C++11 standard without relying on boost or asio, making it self-contained and easier to integrate, as highlighted in the compiling requirements.

Structured Concurrency Model

Abstracts tasks into five types with factory generation and explicit lifecycle management, reducing callback depth and memory leaks without std::shared_ptr.

Cons

Protocol Coverage Gaps

Built-in protocols are limited to HTTP, Redis, MySQL, and Kafka; common protocols like WebSocket or gRPC require custom implementation or external projects like srpc.

Windows Branch Fragmentation

Windows support is in a separate branch using iocp, which may lead to inconsistent updates, maintenance overhead, and potential feature lag compared to the main Linux/macOS branch.

Additional Dependency Hassles

Kafka protocol requires installing compression libraries like lz4, zstd, and snappy, adding setup complexity beyond the core framework.

Frequently Asked Questions

Quick Stats

Stars14,339
Forks2,566
Contributors0
Open Issues25
Last commit9 days ago
CreatedSince 2020

Tags

#parallel-computing#high-performance#redis#http#kafka#c-plus-plus#high-concurrency#microservices#mysql#dag#rpc-framework#consul#enterprise-backend#task-scheduling

Built With

S
Snappy
O
OpenSSL
l
lz4
Z
ZSTD
C
C++11
B
BoringSSL

Included in

C/C++70.6kMicroservices14.2k
Auto-fetched 1 day ago

Related Projects

FollyFolly

An open-source C++ library developed and used at Facebook.

Stars30,338
Forks5,867
Last commit1 day ago
uWebSocketsuWebSockets

Simple, secure & standards compliant web server for the most demanding of applications

Stars18,806
Forks1,850
Last commit1 day ago
abseil-cppabseil-cpp

Abseil Common Libraries (C++)

Stars17,210
Forks3,003
Last commit3 days ago
DLIBDLIB

A toolkit for making real world machine learning and data analysis applications in C++

Stars14,366
Forks3,453
Last commit26 days 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