hyperf/docs/zh-cn
李铭昕 1f3f0d504a
Release v3.1.19 (#6699)
Co-authored-by: zds <49744633+zds-s@users.noreply.github.com>
2024-04-18 10:23:24 +08:00
..
changelog Release v3.1.19 (#6699) 2024-04-18 10:23:24 +08:00
component-guide Release v3.1.16 (#6649) 2024-04-02 10:40:09 +08:00
db Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
eco Release v3.0.1 (#5295) 2023-01-09 08:06:39 +08:00
imgs Remove useless images 2022-11-15 12:08:55 +08:00
middleware Upgrade docs about metrics. (#6356) 2023-12-05 18:08:44 +08:00
quick-start Release v3.1.7 (#6503) 2024-01-26 10:02:44 +08:00
sdks Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
tutorial Upgrade docs for v3.1 (#6335) 2023-11-29 11:44:48 +08:00
upgrade update upgrade 3.1 doc (#6410) 2023-12-22 15:34:55 +08:00
amqp.md Upgrade the documents. (#6460) 2024-01-12 09:57:51 +08:00
annotation.md Upgrade docs about replacing utils with support (#6425) 2024-01-01 19:52:20 +08:00
aop.md Added docs about how to use getInstance(). 2023-08-11 10:23:42 +08:00
async-queue.md Upgrade the documents. (#6460) 2024-01-12 09:57:51 +08:00
awesome-components.md Release v3.1.14 (#6610) 2024-03-21 22:26:15 +08:00
cache.md Added MemoryDriver for hyperf/cache (#6542) 2024-02-20 11:22:01 +08:00
circuit-breaker.md Add callable type support to the fallback property of CircuitBreaker Attribute (#6363) 2023-12-07 11:25:12 +08:00
command.md Release v3.1.13 (#6596) 2024-03-14 18:23:13 +08:00
communication.md Split changelog docs. (#6211) 2023-10-12 22:08:55 -05:00
config-center.md Release v3.1.7 (#6503) 2024-01-26 10:02:44 +08:00
config.md Upgrade docs about replacing utils with support (#6425) 2024-01-01 19:52:20 +08:00
constants.md Added option type for gen:constant which you can be used to generate files with const or enum. (#6681) 2024-04-13 14:53:08 +08:00
consul.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
contribute.md docs(contribute): update pull request url 2020-06-26 19:20:17 +08:00
controller.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
coroutine-server.md Update docs (#3545) 2021-05-07 19:39:00 +08:00
coroutine.md Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
crontab.md Update docs for crontab (#6486) 2024-01-22 11:35:28 +08:00
dag.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
devtool.md Update devtool docs 2021-12-13 15:20:34 +08:00
di.md Added docs about PriorityDefinition. (#6139) 2023-09-07 14:50:57 +08:00
distributed-transaction.md Remove mirrors.aliyun.com/composer (#5778) 2023-06-01 12:38:34 +08:00
donate.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
elasticsearch.md Test swoole-master for phpunit (#3503) 2021-04-19 22:03:42 +08:00
enterprise-service.md Update doc 2022-02-16 02:13:55 +08:00
etcd.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
event.md doc: 修改笔误 (#6279) 2023-11-11 22:31:15 +08:00
exception-handler.md Release v3.1.19 (#6699) 2024-04-18 10:23:24 +08:00
filesystem.md Release v3.1.16 (#6649) 2024-04-02 10:40:09 +08:00
graphql.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +08:00
grpc.md Upgrade docs about use camelcase naming convention for gRPC methods (#6430) 2024-01-04 10:06:27 +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-10 01:54:13 +08:00
json-rpc.md Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
kafka.md Release v3.1.14 (#6610) 2024-03-21 22:26:15 +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 Upgrade docs about metrics. (#6356) 2023-12-05 18:08:44 +08:00
microservice.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
nacos.md Release v3.0.7 (#5431) 2023-02-18 06:40:54 +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 Upgrade docs about skip_cache_results cache config (#6465) 2024-01-18 11:33:27 +08:00
nsq.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
paginator.md Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
phar.md Release v2.1.7 (#3284) 2021-02-22 08:56:22 +08:00
pool.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +08:00
process.md Update docs about how to use async io in process. (#6104) 2023-08-30 09:35:31 +08:00
rate-limit.md Use Hyperf\Context\ApplicationContext instead of Hyperf\Utils\ApplicationContext. (#5621) 2023-04-11 15:57:32 +08:00
reactive-x.md Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
README.md Release v3.1.7 (#6503) 2024-01-26 10:02:44 +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 Throw invalid argument exception when the crontab task is null. (#6131) 2023-09-05 10:52:48 +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 Upgrade docs about skip_cache_results cache config (#6465) 2024-01-18 11:33:27 +08:00
rpc-multiplex.md Fixed bug that Hyperf\HttpServer\Request::hasFile don't support Swow. (#6056) 2023-08-18 15:28:12 +08:00
rpn.md Remove PHPUnit badge for rpn (#6014) 2023-08-11 09:44:28 +08:00
scout.md Changed config file scout.php which search engine index is used as the model index name by default. (#2934) 2020-12-08 11:24:30 +08:00
service-register.md Update 2023-01-03 07:13:43 +08:00
session.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +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 Upgrade docs about class namespaces. (#6417) 2023-12-28 14:12:15 +08:00
summary.md Upgrade docs about replacing utils with support (#6425) 2024-01-01 19:52:20 +08:00
support.md Upgrade docs about replacing utils with support (#6425) 2024-01-01 19:52:20 +08:00
swagger.md Added docs about how to change swagger dashboard. (#6659) 2024-04-08 17:06:06 +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 tcp-server.md (#5724) 2023-05-16 15:45:26 +08:00
testing.md Release v3.1.18 (#6679) 2024-04-12 10:50:19 +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
validation.md Release v3.1.16 (#6649) 2024-04-02 10:40:09 +08:00
versions.md Merge remote-tracking branch 'origin/master' into 2.0 2020-06-19 19:10:12 +08:00
view-engine.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +08:00
view.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +08:00
watcher.md Optimized FswatchDriver which don't restart server by empty reading. (#6686) 2024-04-17 11:35:30 +08:00
websocket-client.md Update all documents about annotations. (#4264) 2021-11-20 10:58:02 +08:00
websocket-server.md upgrade documents about websocket-server. (#5846) 2023-06-17 21:12:15 +08:00

3.1 介绍

Hyperf 是一个高性能、高灵活性的渐进式 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM 的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是 可替换可复用 的。

框架组件库除了常见的协程版的 MySQL 客户端Redis 客户端,还为您准备了协程版的 Eloquent ORMWebSocket 服务端及客户端JSON RPC 服务端及客户端gRPC 服务端及客户端Zipkin/Jaeger (OpenTracing) 客户端Guzzle HTTP 客户端Elasticsearch 客户端Consul 客户端ETCD 客户端AMQP 组件Apollo 配置中心阿里云 ACM 应用配置管理ETCD 配置中心基于令牌桶算法的限流器通用连接池熔断器Swagger 文档生成视图引擎Snowflake 全局 ID 生成器 等组件,省去了自己实现对应协程版本的麻烦。

Hyperf 还提供了 基于 PSR-11 的依赖注入容器注解AOP 面向切面编程基于 PSR-15 的中间件自定义进程基于 PSR-14 的事件管理器Redis/RabbitMQ 消息队列自动模型缓存基于 PSR-16 的缓存Crontab 秒级定时任务国际化Validation 表单验证器 等非常便捷的功能,满足丰富的技术场景和业务场景,开箱即用。

框架初衷

尽管现在基于 PHP 语言开发的框架处于一个百家争鸣的时代,但仍旧未能看到一个优雅的设计与超高性能的共存的完美框架,亦没有看到一个真正为 PHP 微服务铺路的框架,此为 Hyperf 及其团队成员的初衷,我们将持续投入并为此付出努力,也欢迎你加入我们参与开源建设。

设计理念

Hyperspeed + Flexibility = Hyperf,从名字上我们就将 超高速灵活性 作为 Hyperf 的基因。

  • 对于超高速,我们基于 Swoole 协程并在框架设计上进行大量的优化以确保超高性能的输出。
  • 对于灵活性,我们基于 Hyperf 强大的依赖注入组件,组件均基于 PSR 标准 的契约和由 Hyperf 定义的契约实现,达到框架内的绝大部分的组件或类都是可替换的。

基于以上的特点Hyperf 将存在丰富的可能性,如实现 Web 服务网关服务分布式中间件微服务架构游戏服务器物联网IOT等。

生产可用

我们为组件进行了大量的单元测试以保证逻辑的正确,同时维护了高质量的文档,在 Hyperf 正式对外开放之前,便已经过了严酷的生产环境的考验,我们才正式的对外开放该项目,至今,已有大量的大型/中小型互联网公司在生产环境使用 Hyperf。