hyperf/docs/en
2023-12-04 11:13:09 +08:00
..
changelog Release v3.1.0 (#6340) 2023-12-01 00:00:30 +08:00
component-guide Remove mirrors.aliyun.com/composer (#5778) 2023-06-01 12:38:34 +08:00
db Docs fix model visitor (#6219) 2023-10-17 07:54:04 -05:00
eco Update 2023-01-03 06:37:37 +08:00
imgs Remove useless images 2022-11-15 12:08:55 +08:00
middleware Added middleware priority docs (#6135) 2023-09-05 19:11:22 +08:00
quick-start Update swow version to 1.4 (#6346) 2023-12-04 11:13:09 +08:00
sdks Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
tutorial English Docs (#5669) 2023-04-25 09:32:59 +08:00
upgrade Added hyperf/config changed into 3.1 Upgrade guide (#6130) 2023-09-04 21:53:09 +08:00
amqp.md Adds amqp docs. (#6287) 2023-11-14 09:57:28 +08:00
annotation.md Added use Attribute into the document about annotations. 2023-10-27 14:42:29 +08:00
aop.md Added the type of $classes and $annotations for aspect. (#4867) 2022-06-22 17:13:13 +08:00
async-queue.md adjustment in doc 2023-01-01 14:48:16 -03:00
awesome-components.md Adds testing to awesome-components (#5851) 2023-06-18 20:01:34 +08:00
cache.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
circuit-breaker.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
command.md Updated the definition of command as annotation. (#5900) 2023-07-04 09:47:50 +08:00
communication.md Split changelog docs. (#6211) 2023-10-12 22:08:55 -05:00
config-center.md Adds ConfigChanged docs for config-center (#5435) 2023-02-21 13:09:55 +08:00
config.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
constants.md Update doc [en] 2022-10-31 00:47:12 +07:00
consul.md Fix incorrect markdown links in the documentation 2021-09-22 14:22:06 +08:00
contribute.md Translating the introduction section (About, Communication, Donate, Contribute), update the README.md to match the new About section, adding a CONTRIBUTING.md file to match the contribute section (#4105) 2021-09-29 11:54:56 +08:00
controller.md Correct translations on Mar 22, 2021 (#3413) 2021-03-23 18:21:18 +08:00
coroutine-server.md Update coroutine-server.md 2023-02-08 13:58:28 +08:00
coroutine.md Removed some deprecated methods from Hyperf\Di\Annotation\AbstractAnnotation. (#6040) 2023-08-16 20:45:43 +08:00
crontab.md Limit closure type crontab dispatch in WorkerStrategy. (#6271) 2023-11-09 13:53:54 +08:00
dag.md Update doc [en] 2022-10-31 00:47:12 +07:00
devtool.md Correct translations on Mar 22, 2021 (#3413) 2021-03-23 18:21:18 +08:00
di.md Docs:fix typos (#6105) 2023-08-31 11:00:59 +08:00
distributed-transaction.md Update 2023-01-03 06:37:37 +08:00
donate.md Translating the introduction section (About, Communication, Donate, Contribute), update the README.md to match the new About section, adding a CONTRIBUTING.md file to match the contribute section (#4105) 2021-09-29 11:54:56 +08:00
elasticsearch.md Do not separate the docs folders by version, use git branch to distinguish the difference versions docs 2020-06-11 13:55:15 +08:00
enterprise-service.md Update doc [en] 2022-10-31 00:47:12 +07:00
etcd.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
event.md Add Coroutine Style Server Lifecycle events Doc (#5445) 2023-03-17 09:49:11 +08:00
exception-handler.md Translate exception-handler, grpc, and guzzle from zh-cn to en. 2021-03-31 18:19:43 +08:00
filesystem.md Docs: add S3 adapter for Flysystem v3.0 (#5981) 2023-08-23 14:15:25 +08:00
graphql.md Update doc [en] 2022-10-31 00:47:12 +07:00
grpc.md 更改grpc文档,代码位置变更 (#3847) 2021-07-22 11:09:39 +08:00
guzzle.md Use Hyperf\Coroutine\Coroutine instead of Hyperf\Utils\Coroutine (#5623) 2023-04-12 12:36:10 +08:00
jet.md Update jet.md 2020-08-11 01:39:21 +08:00
json-rpc.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
kafka.md Fix docs: kafka package path (#6307) 2023-11-22 13:47:18 +08:00
lifecycle.md Do not separate the docs folders by version, use git branch to distinguish the difference versions docs 2020-06-11 13:55:15 +08:00
logger.md Upgrade docs about cache, command and logger. (#6037) 2023-08-16 16:20:08 +08:00
memory.md Do not separate the docs folders by version, use git branch to distinguish the difference versions docs 2020-06-11 13:55:15 +08:00
metric.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
microservice.md Translate json-rpc, logger and microservice from zh-cn to en. Apr 8, 2021 (#3461) 2021-04-08 18:00:29 +08:00
nacos.md English Docs (#5669) 2023-04-25 09:32:59 +08:00
nano.md Do not separate the docs folders by version, use git branch to distinguish the difference versions docs 2020-06-11 13:55:15 +08:00
nats.md Update doc [en] 2022-10-31 00:47:12 +07:00
nsq.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
paginator.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
phar.md English Docs (#5669) 2023-04-25 09:32:59 +08:00
pool.md Translate paginator, pool and rate-limit from zh-cn to en. Apr 18, 2021 (#3496) 2021-04-18 17:12:52 +08:00
process.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
rate-limit.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
reactive-x.md Use Hyperf\Collection\Arr instead of Hyperf\Utils\Arr. (#5594) 2023-04-02 21:17:26 +08:00
README.md Remove deprecated component swoole-tracker (#6244) 2023-11-01 10:32:14 +08:00
redis.md Added options for redis config (#6194) 2023-10-08 21:06:25 -05:00
release-planning.md Release v3.1.0 (#6340) 2023-12-01 00:00:30 +08:00
request.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
response.md Fixed docs for command model and resource. (#5659) 2023-04-23 17:51:40 +08:00
retry.md Update 2023-01-03 07:13:43 +08:00
router.md Update router.md 2022-11-15 14:02:31 +08:00
rpc-multiplex.md Update doc [en] 2022-10-31 00:47:12 +07:00
rpn.md Update doc [en] 2022-10-31 00:47:12 +07:00
scout.md Update doc [en] 2022-10-31 00:47:12 +07:00
service-register.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
session.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
signal.md update signal doc (#6262) 2023-11-07 14:21:06 +08:00
snowflake.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
socketio-server.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
summary.md Upgrade docs for v3.1 (#6335) 2023-11-29 11:44:48 +08:00
swagger.md Add docs for swagger (#5581) 2023-03-29 09:36:04 +08:00
task.md Use Hyperf\Coroutine\Coroutine instead of Hyperf\Utils\Coroutine (#5623) 2023-04-12 12:36:10 +08:00
tcp-server.md Update doc [en] 2022-10-31 00:47:12 +07:00
testing.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
tracer.md Adds RequestTraceListener for hyperf/tracer (#6062) 2023-09-05 18:19:28 +08:00
translation.md Fix translation demo code error. (#6190) 2023-10-08 04:01:41 -05:00
utils.md Use Hyperf\Coroutine\Coroutine instead of Hyperf\Utils\Coroutine (#5623) 2023-04-12 12:36:10 +08:00
validation.md Fixed docs for validatoin. (#5653) 2023-04-21 17:33:21 +08:00
versions.md Update the english doc 2020-07-27 02:32:06 +08:00
view-engine.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
view.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
watcher.md Update watcher.md 2020-12-29 15:11:48 +08:00
websocket-client.md Update English document about Annotation. 2022-01-13 12:09:04 +08:00
websocket-server.md update ws Middleware docs (#4301) 2022-04-17 16:03:50 +08:00

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).

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.