English | 中文 Introduction Hyperf is an extremely performant and flexible PHP CLI framework, powered by a state-of-the-art coroutine server and a large number of battle-tested components. Aside from decisively…
English | [中文](./README-CN.md)
Introduction
Hyperf is an extremely performant and flexible PHP CLI framework, powered by a state-of-the-art coroutine server and a large number of battle-tested components. Aside from decisively beating PHP-FPM frameworks in benchmarks, Hyperf is unique in its focus on flexibility and composition. Hyperf ships with an AOP-enabling (aspect-oriented programming) dependency injector to ensure components and classes are pluggable and meta-programmable. All of Hyperf's core components strictly follow PSR standards and can be used in other frameworks.
Hyperf's architecture is built using a combination of Coroutines, Dependency injection, Events, Annotations, and AOP. In addition to providing MySQL, Redis and other common coroutine clients, Hyperf also provides coroutine compatible versions of WebSocket server / client, JSON RPC server / client, gRPC server / client, Zipkin/Jaeger (OpenTracing) client, Guzzle HTTP client, Elasticsearch client, Consul client, ETCD client, AMQP component, Apollo configuration center, Aliyun ACM, ETCD configuration center, Token bucket algorithm-based limiter, Universal connection pool, Circuit breaker, Swagger, Snowflake, Simply Redis MQ, RabbitMQ, NSQ, Nats, Seconds level crontab, Custom Processes, etc. Therefore, developers can entirely avoid implementing coroutine compatible versions of these libraries.
Rest assured, Hyperf is still a PHP framework. Hyperf provides all the packages you expect: Middleware, Event Manager, Coroutine-optimized Eloquent ORM (and Model Cache!), Translation, Validation, View engine (Blade/Smarty/Twig/Plates/ThinkTemplate) and more.
Origin
Although there are many new PHP frameworks, we still haven't found a framework that matches an elegant design with ultra-high performance, nor have we found a framework that paves the way for PHP microservices. With this vision in mind, we will continue to invest in the future of this framework, and you are welcome to join us in contributing to the open-source development of Hyperf.
Design Goals
Hyperspeed + Flexibility = Hyperf. The equation hidden in our name exhibits Hyperf's founding ambition.
Hyperspeed: Leveraging Swoole and Swow coroutines, Hyperf is capable of handling massive amounts of traffic. The Hyperf team made many optimizations to the framework to eliminate every bottleneck between the end-user and our blazing engine.
Flexibility: We believe our Dependency Injection component is best in class. With the help of Hyperf DI, components and classes are all pluggable and meta-programmable. Inversely, all Hyperf components are meant to be shared with the world. Our commitment to PSR standards means that you can use Hyperf components in any compatible framework.
Via these traits, Hyperf has discovered the untapped potential in many fields: implementing Web servers, gateway servers, distributed middleware software, microservices architecture, game servers, and Internet-of-Things (IoT).
Operating environment
- Linux, OS X or Cygwin, WSL, Windows
- PHP 8.1+
- Swoole 5.0+ or Swow 1.4+
Production ready
Alongside our well-maintained, multilingual documentation, a large number of unit tests for each component ensure logical correctness. Before Hyperf was released to the public (2019-06-20), it had been privately used by some medium and large Internet companies for multiple services, which have been running without incident for years in harsh production environments.
Official website and Documentation
Official website https://hyperf.io
Documentation https://hyperf.wiki
Security Vulnerabilities
If you discover a security vulnerability within Hyperf, please send an e-mail to the Hyperf Team via [email protected]. All security vulnerabilities will be promptly addressed.
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
Financial Contributors
Become a financial contributor and help us sustain our community. [Contribute]
Support this project with your organization or company. Your logo will show up here with a link to your website. [Contribute]
Performance
Aliyun 8 cores 16G ram
command:wrk -c 1024 -t 8 http://127.0.0.1:9501/
bash
Running 10s test @ http://127.0.0.1:9501/
8 threads and 1024 connections
Thread Stats Avg Stdev Max +/- Stdevs
Latency 10.08ms 6.82ms 56.66ms 70.19%
Req/Sec 13.17k 5.94k 33.06k 84.12%
1049478 requests in 10.10s, 190.16MB read
Requests/sec: 103921.49
Transfer/sec: 18.83MB
The Hyperf Ecosystem
- 🧬 Nano is a zero-config, no skeleton, minimal Hyperf distribution that allows you to quickly build a Hyperf application with just a single PHP file.
- ⚡️ GoTask is a library to spawns a go process as a Swoole sidecar and establishes a bi-directional IPC to offload heavy-duties to Go. Think of it as a Swoole Taskworker in Go.
- 🚀 Jet is a unification model RPC Client, built-in JSONRPC protocol, available to running in ALL PHP environments, including PHP-FPM and Swoole/Hyperf environments.
- 🧰 Box is committed to helping improve the programming experience of Hyperf applications, managing the PHP environment and related dependencies, providing the ability to package Hyperf applications as binary programs, and also providing reverse proxy services for managing and deploying Hyperf applications.
Stargazers over time

License
The Hyperf framework is open-source software licensed under the MIT license.
Members
-
hyperf ★ PINNED
🚀 A coroutine framework that focuses on hyperspeed and flexibility. Building microservice or middleware with ease.
PHP ★ 6.9k 2d agoExplain → -
nano ★ PINNED
🧬 Nano is a zero-config, no skeleton, minimal Hyperf distribution that allows you to quickly build a Hyperf application with just a single PHP file.
PHP ★ 433 2y agoExplain → -
hyperf-docker ★ PINNED
🐳 The docker image offered by Hyperf.
Dockerfile ★ 348 1mo agoExplain → -
hyperf-skeleton ★ PINNED
🛠 A skeleton of Hyperf framework that provided by official team
PHP ★ 306 2mo agoExplain → -
gotask ★ PINNED
⚡️ A lightning speed replacement for Swoole TaskWorker in Go
PHP ★ 257 2y agoExplain → -
box ★ PINNED
Box is committed to helping improve the programming experience of PHP applications, expecially for Hyperf, managing the PHP environment and related dependencies, providing the ability to package PHP applications as binary programs, and also providing reverse proxy services for managing and deploying Swoole/Swow applications.
PHP ★ 154 1y agoExplain → -
biz-skeleton
Business Web Api Skeleton
PHP ★ 61 13d agoExplain → -
jet
🚀 Jet is a unification model RPC Client, built-in JSON RPC protocol, available to running in ALL PHP environments, including PHP-FPM and Swoole/Hyperf environments.
PHP ★ 61 2y agoExplain → -
odin
No description.
PHP ★ 49 5mo agoExplain → -
swow-skeleton
Skeleton for Swow
PHP ★ 49 2y agoExplain → -
xxl-job-incubator
XXL-JOB 的 PHP 版本任务执行器(Job Executor)
PHP ★ 46 23d agoExplain → -
hyperf-admin
No description.
★ 42 6y agoExplain → -
socketio-server
[READ ONLY]
PHP ★ 26 2mo agoExplain → -
snowflake
A snowflake component.
PHP ★ 25 2mo agoExplain → -
mcp-incubator
No description.
PHP ★ 24 1y agoExplain → -
amqp
No description.
PHP ★ 23 2mo agoExplain → -
nacos
A PHP implementation of Nacos OpenAPI, particularly adapt for Hyperf.
PHP ★ 22 17d agoExplain → -
swagger
No description.
PHP ★ 20 17d agoExplain → -
database
No description.
PHP ★ 19 14d agoExplain → -
di
No description.
PHP ★ 18 17d agoExplain → -
watcher
[READ ONLY]
PHP ★ 17 17d agoExplain → -
engine-swow
No description.
PHP ★ 17 2mo agoExplain → -
mqtt-server-incubator
No description.
PHP ★ 17 1y agoExplain → -
swoole-tracker
No description.
PHP ★ 17 2y agoExplain → -
graphql
No description.
PHP ★ 15 2mo agoExplain → -
roc
Channel driven multiplexing connection for Golang.
Go ★ 13 6mo agoExplain → -
crontab
Crontab component.
PHP ★ 13 2mo agoExplain → -
database-pgsql-incubator ▣
No description.
PHP ★ 13 3y agoExplain → -
validation
Validation component for Hyperf
PHP ★ 12 2d agoExplain → -
database-pgsql
[READ ONLY] A pgsql handler for hyperf/database
PHP ★ 12 17d agoExplain → -
websocket-server
WebSocket Server for Hyperf.
PHP ★ 12 1mo agoExplain → -
okr
实战项目 - OKR系统
PHP ★ 11 5y agoExplain → -
dag-incubator ▣
Directed Acyclic Graph
PHP ★ 11 5y agoExplain → -
http-server
No description.
PHP ★ 10 2mo agoExplain → -
tracer
No description.
PHP ★ 9 2d agoExplain → -
async-queue
No description.
PHP ★ 9 17d agoExplain → -
task
Task component.
PHP ★ 9 2mo agoExplain → -
guzzle
No description.
PHP ★ 9 2mo agoExplain → -
redis
No description.
PHP ★ 8 2mo agoExplain → -
db-connection
No description.
PHP ★ 8 2mo agoExplain → -
aop-integration
AOP Integration
PHP ★ 8 3y agoExplain → -
rpc-multiplex-incubator ▣
Rpc for multiplexing connection
PHP ★ 8 5y agoExplain → -
rpn
[READ ONLY] Reverse Polish Notation
PHP ★ 7 2mo agoExplain → -
translation
A independent translation component
PHP ★ 7 2mo agoExplain → -
rpc-multiplex
[READ ONLY] Rpc for multiplexing connection
PHP ★ 7 2mo agoExplain → -
reactive-x
[READ ONLY]
PHP ★ 7 2mo agoExplain → -
kafka
[READ ONLY] Kafka client for Hyperf
PHP ★ 7 2mo agoExplain → -
elasticsearch
No description.
PHP ★ 7 2mo agoExplain → -
utils
No description.
★ 7 1y agoExplain → -
skills
Skills for coding ai
★ 6 3mo agoExplain → -
pool
No description.
PHP ★ 6 1mo agoExplain → -
super-globals
[READ ONLY]
PHP ★ 6 2mo agoExplain → -
scout
[READ ONLY] A driver based solution to searching your models. Inspired By Laravel Scout.
PHP ★ 6 2mo agoExplain → -
metric
[READ ONLY]
PHP ★ 6 2mo agoExplain → -
load-balancer
No description.
PHP ★ 6 2mo agoExplain → -
framework
No description.
PHP ★ 6 2mo agoExplain → -
etcd
No description.
PHP ★ 6 2mo agoExplain → -
migration-generator-incubator
Migration Generator which used to generatie migrations from an existing table structure for Hyperf.
PHP ★ 6 3y agoExplain → -
component-creator
Hyperf component creater.
PHP ★ 6 4mo agoExplain → -
engine
No description.
PHP ★ 6 8mo agoExplain → -
dag
Directed Acyclic Graph
PHP ★ 6 2mo agoExplain → -
multiplex
channel driven multiplexing connection
PHP ★ 6 2y agoExplain → -
flysystem-oss
Aliyun OSS Adapter for Flysystem v2.0
PHP ★ 6 2y agoExplain → -
composer-plugin
Plugin for Composer
PHP ★ 6 3y agoExplain → -
view
[READ ONLY] View component.
PHP ★ 5 2mo agoExplain → -
config-apollo
No description.
PHP ★ 5 2mo agoExplain → -
command
No description.
PHP ★ 5 2mo agoExplain → -
lwmbs ⑂
light weight (maybe) phpmicro build scripts
PHP ★ 5 1y agoExplain → -
roc-generator
Generator for `hyperf/roc` and `hyperf/rpc-multiplex`.
PHP ★ 5 3y agoExplain → -
multiplex-socket
Socket for channel driven multiplexing connection
PHP ★ 5 1y agoExplain → -
db-pgsql-incubator ▣
PgSQL driver for Hyperf DB Component
PHP ★ 5 4y agoExplain → -
logger
No description.
PHP ★ 4 2d agoExplain → -
websocket-client
Hyperf WebSocket Client
PHP ★ 4 2mo agoExplain → -
testing
No description.
PHP ★ 4 2mo agoExplain → -
session
No description.
PHP ★ 4 2mo agoExplain → -
rate-limit
No description.
PHP ★ 4 2mo agoExplain → -
nsq
[READ ONLY] Nsq component
PHP ★ 4 2mo agoExplain → -
nats
[READ ONLY] Nats for hyperf.
PHP ★ 4 2mo agoExplain → -
json-rpc
No description.
PHP ★ 4 2mo agoExplain → -
http-message
No description.
PHP ★ 4 2mo agoExplain → -
grpc-client
No description.
PHP ★ 4 9d agoExplain → -
filesystem
[READ ONLY]
PHP ★ 4 2mo agoExplain → -
contract
No description.
PHP ★ 4 2mo agoExplain → -
consul
No description.
PHP ★ 4 2mo agoExplain → -
constants
No description.
PHP ★ 4 2mo agoExplain → -
config-aliyun-acm
No description.
PHP ★ 4 2mo agoExplain → -
config
No description.
PHP ★ 4 2mo agoExplain → -
single-flight-incubator
No description.
PHP ★ 4 10mo agoExplain → -
qdrant-client
No description.
PHP ★ 4 1y agoExplain → -
docker-ci
Image for Gitlab CI
Dockerfile ★ 4 4y agoExplain → -
view-engine
[READ ONLY] Laravel View Engine for Hyperf
PHP ★ 3 17d agoExplain → -
signal
[READ ONLY]
PHP ★ 3 2mo agoExplain → -
service-governance
No description.
PHP ★ 3 2mo agoExplain → -
server
No description.
PHP ★ 3 2mo agoExplain → -
rpc-client
No description.
PHP ★ 3 2mo agoExplain → -
phar
[READ ONLY]
PHP ★ 3 2mo agoExplain → -
paginator
No description.
PHP ★ 3 2mo agoExplain → -
grpc-server
No description.
PHP ★ 3 2mo agoExplain → -
event
No description.
PHP ★ 3 2mo agoExplain → -
cache
No description.
PHP ★ 3 2mo agoExplain → -
mcp-server-incubator
No description.
PHP ★ 3 8mo agoExplain → -
scan-manager-incubator
No description.
PHP ★ 3 5y agoExplain → -
open-telemetry-incubator
Open-Telemetry for Hyperf, this is an incubation project.
PHP ★ 3 1y agoExplain → -
octopus
A distributed project base on Hyperf.
PHP ★ 3 3y agoExplain → -
hyperf.io
The official site of Hyperf
JavaScript ★ 3 2y agoExplain → -
rpn-incubator ▣
Reverse Polish Notation Calculator
PHP ★ 3 5y agoExplain → -
model-cache
No description.
PHP ★ 2 14d agoExplain → -
macroable
Hyperf Macroable package which come from `illuminate/macroable`.
PHP ★ 2 2mo agoExplain → -
http2-client
The HTTP2 Client for Hyperf.
PHP ★ 2 2mo agoExplain → -
grpc
No description.
PHP ★ 2 2mo agoExplain → -
dispatcher
No description.
PHP ★ 2 2mo agoExplain → -
devtool
No description.
PHP ★ 2 2mo agoExplain → -
context
A coroutine context library
PHP ★ 2 2mo agoExplain → -
config-nacos
[READ ONLY] A nacos adapter for Hyperf config component.
PHP ★ 2 2mo agoExplain → -
migration-generator
[READ ONLY]
PHP ★ 2 17d agoExplain → -
code-generator
Code Generator for Hyperf
PHP ★ 2 4y agoExplain → -
homebrew-hyperf
No description.
Ruby ★ 2 3y agoExplain → -
coding-standard ▣
Repository with all coding standard ruleset for Hyperf repositories.
★ 2 7y agoExplain → -
ideas ▣
🧐 Issues board used for Hyperf discussions.
★ 2 7y agoExplain → -
github-bot ⑂
A robot that helps manage your Github project, base on Hyperf.
PHP ★ 2 4y agoExplain → -
support
[READ ONLY]
PHP ★ 1 2d agoExplain → -
tappable
[READ ONLY]
PHP ★ 1 2mo agoExplain → -
socket
[READ ONLY] Socket
PHP ★ 1 2mo agoExplain → -
rpc-server
No description.
PHP ★ 1 2mo agoExplain → -
retry
[READ ONLY]
PHP ★ 1 2mo agoExplain → -
resource
[READ ONLY]
PHP ★ 1 2mo agoExplain → -
process
No description.
PHP ★ 1 2mo agoExplain → -
model-listener
[READ ONLY] Model Listener
PHP ★ 1 2mo agoExplain → -
exception-handler
No description.
PHP ★ 1 2mo agoExplain → -
database-sqlite
[READ ONLY]
PHP ★ 1 2mo agoExplain → -
config-center
[READ ONLY] The abstraction component of config center
PHP ★ 1 2mo agoExplain → -
nacos2.2-incubator ▣
Nacos for Hyperf 2.2
PHP ★ 1 5y agoExplain → -
laminas-mime
Mirror of laminas/laminas-mime
PHP ★ 1 1y agoExplain → -
go-stringable
Golang Stringable 组件
Go ★ 1 1y agoExplain → -
roc-py
多路复用RPC组件 Python 版本
Python ★ 1 1y agoExplain → -
swoole-enterprise ▣
Swoole 企业版 / Swoole Enterprise
PHP ★ 1 6y agoExplain → -
nacos-sdk-incubator ▣
Nacos SDK
PHP ★ 1 5y agoExplain → -
casbin
[READ ONLY] An authorization library that supports access control models like ACL, RBAC, ABAC in Hyperf
★ 1 6y agoExplain → -
db
[READ ONLY] A simple db component for Hyperf.
PHP ★ 0 17d agoExplain → -
coordinator
Hyperf Coordinator
PHP ★ 0 1mo agoExplain → -
coroutine
[READ ONLY]
PHP ★ 0 1mo agoExplain → -
stringable
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
serializer
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
rpc
No description.
PHP ★ 0 2mo agoExplain → -
resource-grpc
No description.
PHP ★ 0 2mo agoExplain → -
protocol
[READ ONLY] Protocol Component.
PHP ★ 0 2mo agoExplain → -
pipeline
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
memory
No description.
PHP ★ 0 2mo agoExplain → -
ide-helper
No description.
PHP ★ 0 2mo agoExplain → -
stdlib
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
config-zookeeper
[READ ONLY] An zookeeper adapter for Hyperf config component.
PHP ★ 0 2mo agoExplain → -
config-etcd
No description.
PHP ★ 0 2mo agoExplain → -
conditionable
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
polyfill-coroutine
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
collection
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
codec
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
code-parser
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
circuit-breaker
No description.
PHP ★ 0 2mo agoExplain → -
carbon
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
helper
[READ ONLY]
PHP ★ 0 2mo agoExplain → -
database-sqlserver
No description.
PHP ★ 0 2mo agoExplain → -
database-sqlserver-incubator ▣
The sqlserver driver for hyperf/database.
PHP ★ 0 1y agoExplain → -
engine-contract
No description.
PHP ★ 0 8mo agoExplain → -
engine-cli
No description.
PHP ★ 0 2y agoExplain → -
service-governance-consul
[READ ONLY] A consul adapter for service governance.
PHP ★ 0 2mo agoExplain → -
service-governance-nacos
[READ ONLY] A nacos adapter for Hyperf service governance component.
PHP ★ 0 2d agoExplain → -
go-cache
Golang Cache
Go ★ 0 1y agoExplain → -
go-priority-queue
PriorityQueue for Golang.
Go ★ 0 1y agoExplain → -
docker-atomhub
Docker images for AtomHub
Dockerfile ★ 0 2y agoExplain → -
lazy-loader-incubator
No description.
PHP ★ 0 2y agoExplain → -
.github
No description.
★ 0 1y agoExplain → -
opentracing-php ⑂
OpenTracing API for PHP
PHP ★ 0 2y agoExplain → -
php-alpine ⑂
PHP APK Repository for Alpine Linux
Shell ★ 0 4y agoExplain → -
closure-command ▣
[READ ONLY]
PHP ★ 0 3y agoExplain → -
raw-storage
No description.
★ 0 3y agoExplain → -
hyperf-installer ▣
Hyperf skeleton installer
PHP ★ 0 7y agoExplain → -
alpine-apk-repository ▣
No description.
Dockerfile ★ 0 5y agoExplain → -
nacos-sdk ▣
[READ ONLY] Nacos SDK
PHP ★ 0 5y agoExplain → -
token-bucket ⑂
Implementation of the Token Bucket algorithm in PHP.
PHP ★ 0 3y agoExplain → -
alpine-docker
No description.
★ 0 5y agoExplain → -
idea-plugin
No description.
★ 0 5y agoExplain → -
clickhouse
No description.
★ 0 7y agoExplain → -
json-rpc-client
No description.
★ 0 6y agoExplain → -
mdnice-theme
The custom theme style code of mdnice.com
CSS ★ 0 6y agoExplain → -
PhpDocReader ⑂
Read @var and @param annotations in phpdoc blocks
PHP ★ 0 6y agoExplain → -
annotations ⑂
Annotations Docblock Parser
PHP ★ 0 6y agoExplain → -
zipkin-php-opentracing ⑂
Zipkin implementation for OpenTracing API
★ 0 6y agoExplain →
No repos match these filters.