hyperf/docs/zh-cn
JokerNg 28b73036e4
Update aliyun-logger.md (#3852)
Co-authored-by: 李铭昕 <715557344@qq.com>
Co-authored-by: 桥边红药 <24204533+qbhy@users.noreply.github.com>
2021-07-23 18:50:43 +08:00
..
component-guide Update docs (#3545) 2021-05-07 19:39:00 +08:00
db Fixed bug that @Crontab does not works when used in methods. (#3450) 2021-04-03 17:00:28 +08:00
imgs 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
middleware Added Hyperf\Nacos\Client::getValidNodes 2021-06-22 19:49:34 +08:00
quick-start Added documents that interface cannot be found in PHP 7.3 (#3849) 2021-07-21 17:49:46 +08:00
sdks Update swoole_hook_flags docs 2021-01-12 17:24:27 +08:00
tutorial Update aliyun-logger.md (#3852) 2021-07-23 18:50:43 +08:00
upgrade Added documents with filesystem about how to upgrade to v2.2 (#3853) 2021-07-22 12:27:08 +08:00
amqp.md Merge branch 'master' into 2.2-merge 2021-06-28 09:40:51 +08:00
annotation.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
aop.md Update docs 2021-01-15 18:02:33 +08:00
async-queue.md Update async-queue.md (#3428) 2021-03-30 09:29:49 +08:00
awesome-components.md Update aliyun-logger.md (#3852) 2021-07-23 18:50:43 +08:00
cache.md v2.0.24 (#2989) 2020-12-21 09:46:38 +08:00
changelog.md Release v2.1.23 (#3803) 2021-07-12 09:13:04 +08:00
circuit-breaker.md 修改错别字 2020-06-23 23:40:13 +08:00
command.md docs: update docs (#3271) 2021-02-18 17:48:07 +08:00
communication.md Update communication.md (#3307) 2021-02-27 14:58:06 +08:00
config-center.md Translate docs 2021-07-19 13:00:24 +08:00
config.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
constants.md Update docs 2021-01-15 18:02:33 +08:00
consul.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
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 Update 2.2 docs 2021-07-19 09:41:04 +08:00
crontab.md Added document for using enable in @Crontab. (#3666) 2021-06-04 21:33:16 +08:00
dag.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
devtool.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
di.md Update di.md (#3459) 2021-04-07 17:41:36 +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
etcd.md Update docs for etcd (#3304) 2021-02-24 14:17:31 +08:00
event.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
exception-handler.md Fix typo (#2916) 2020-12-03 15:58:26 +08:00
filesystem.md Added documents with filesystem about how to upgrade to v2.2 (#3853) 2021-07-22 12:27:08 +08:00
graphql.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
grpc.md 更改grpc文档,代码位置变更 (#3847) 2021-07-22 11:09:39 +08:00
guzzle.md Since the 2.2.2 version, promphp/prometheus_client_php will cause fatal error 2021-03-05 20:54:24 +08:00
jet.md Update jet.md 2020-08-10 01:54:13 +08:00
json-rpc.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
kafka.md Renamed nacos-sdk as nacos. 2021-06-24 16:30:27 +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 Fixed multiple handlers description error for logger. 2021-07-06 18:50:01 +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 promphp instead of endclothing for prometheus_client_php. (#3676) 2021-06-05 22:39:01 +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 Fixed typo of namespace in nacos.md 2021-07-20 16:50:40 +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 Fix typo (#2916) 2020-12-03 15:58:26 +08:00
nsq.md Fixed nsq max idle time. (#3621) 2021-05-25 20:39:16 +08:00
paginator.md Update paginator.md (#3361) 2021-03-12 17:15:01 +08:00
phar.md Release v2.1.7 (#3284) 2021-02-22 08:56:22 +08:00
pool.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
process.md Update process.md 2021-03-25 19:17:10 +08:00
rate-limit.md Translate paginator, pool and rate-limit from zh-cn to en. Apr 18, 2021 (#3496) 2021-04-18 17:12:52 +08:00
reactive-x.md v2.0.3 (#2136) 2020-07-20 15:17:27 +08:00
README.md Update README.md 2021-07-19 09:41:04 +08:00
redis.md fix typo 2020-09-16 14:07:18 +08:00
release-planning.md Update 2.2 docs 2021-07-19 09:41:04 +08:00
request.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
response.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
retry.md Optimized the fallback of FallbackRetryPolicy which support class@method (#2471) 2020-09-09 17:05:18 +08:00
router.md Optimized document for Annotation @AutoController. (#2924) 2020-12-06 14:23:10 +08:00
rpc-multiplex.md Added document about how to use rpc-multiplex 2021-06-29 13:59:58 +08:00
rpn.md Use promphp instead of endclothing for prometheus_client_php. (#3676) 2021-06-05 22:39:01 +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 2.2 docs 2021-07-19 09:41:04 +08:00
session.md Add docs/en/session.md (#3491) 2021-04-16 17:49:08 +08:00
signal.md Removed deprecated code. (#2648) 2020-10-13 10:30:14 +08:00
snowflake.md Added usage for trait snowflake. (#2838) 2020-11-20 14:13:56 +08:00
socketio-server.md Update documents (#3173) 2021-01-21 14:44:04 +08:00
summary.md Added test cases for config-center 2021-07-19 12:15:16 +08:00
swoole-tracker.md No need to install composer (#3250) 2021-02-06 10:50:14 +08:00
task.md Fixed bug that property $workerId does not works in annotation @Task. (#3674) 2021-06-06 15:53:55 +08:00
tcp-server.md Use reactorId instead of fromId (#3509) 2021-04-21 17:16:31 +08:00
testing.md Update testing.md (#3792) 2021-07-20 18:20:29 +08:00
tracer.md Fixed typo 2021-06-04 14:34:53 +08:00
translation.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
utils.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
validation.md Remove useless content 2021-06-14 01:26:02 +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 2.2 docs 2021-07-19 09:41:04 +08:00
view.md Added NoneEngine as the default engine of view config (#2958) 2020-12-11 16:21:12 +08:00
watcher.md Added FindNewerDriver which is friendly with mac, linux and docker for watcher. (#3170) 2021-01-23 13:09:45 +08:00
websocket-client.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
websocket-server.md Release v2.1.19 (#3637) 2021-05-31 09:44:47 +08:00

2.2 介绍

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 文档生成Swoole Tracker视图引擎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。