swoole/swoole-src

🚀 Coroutine-based concurrency library for PHP

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 58 minutes ago
Added to GitGenius on September 3rd, 2026
Created on July 21st, 2012
Open Issues & Pull Requests: 49 (+1)
GitHub issues: Enabled
Number of forks: 3,143
Total Stargazers: 18,915 (+0)
Total Subscribers: 806 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.2 hours
Mean response time: 39.5 days
90th percentile: 9.6 days
Tracked items: 406

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Work labelled "fixed" is answered fastest, typically in about 7 hours, while "waiting on review" waits about 4 days. Only 8% of issues opened in the past year have been closed. Three people close 85% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 4
New in 7 days: 2
Closed in 7 days: 5
Avg open age: 32 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 2
Closed in 7 days: 4
Comments in 7 days: 1
Events in 7 days: 6

Top labels

  • question (102)
  • fixed (43)
  • bug (24)
  • expired (21)
  • waiting for user action (18)
  • waiting on review (17)
  • feature request (12)
  • proposal (11)

Detailed Description

Swoole is a coroutine-based concurrency library for PHP that enables high-performance asynchronous programming through an event-driven architecture.

Swoole addresses the challenge of handling concurrent operations in PHP by automatically converting blocking I/O functions into non-blocking ones at the runtime level. When code calls standard PHP functions like those in curl, Redis, MySQL, or stream operations, Swoole hooks these calls and executes them asynchronously within coroutines without requiring developers to rewrite their code. The library uses epoll/kqueue for efficient event multiplexing and provides a CSP-style programming model through channels for inter-coroutine communication. Developers can write synchronous-looking code that achieves asynchronous performance, with the runtime automatically scheduling thousands of lightweight coroutines in a single process.

Swoole suits projects that need to handle high concurrency with PHP, particularly HTTP services, WebSocket servers, and mixed-protocol applications. It works well for teams comfortable with PHP who want to avoid rewriting applications in another language to gain concurrency benefits. The automatic runtime hooking means existing PHP libraries and extensions can often be used directly within coroutines without modification, though the README specifically lists supported extensions including curl, Redis, MySQL/PostgreSQL/SQLite drivers, stream functions, sockets, and others. Projects requiring real-time communication or handling thousands of concurrent connections benefit most from this approach.

Maintainers respond to issues and pull requests within a day. The issue tracker shows active engagement focused on questions, bug fixes, and resolved issues, indicating steady maintenance and community support.