当前位置: 首页 > 后端技术 > PHP

?Hyperf多组件v1.0.4更新-企业级PHP微服务协程框架

时间:2023-03-30 00:57:41 PHP

v1.0.4更新内容本次更新涉及以下组件,主要增加了对Swoole4.4的支持和部分组件的功能增强,同时修复了一些Bughyperf/async-queuehyperf/commandhyperf/confighyperf/constantshyperf/consulhyperf/contracthyperf/databasehyperf/db-connectionhyperf/dihyperf/dispatcherhyperf/frameworkhyperf/http-serverhyperf/poolhyperf/redishyperf/rpc-clienthyperf/服务治理hyperf/utilshyperf/websocket-server添加了#140以支持Swoolev4.4.0。#152连接池会在数据库连接使用率低时自动释放连接#163常量组件的AbstractConstants::__callStatic支持自定义参数更改#124DriverInterface::push增加$delay参数设置延迟时间,以及DriverInterface::delay将被标记为已弃用,并将在1.1版本中删除#125更改config()函数的$default参数的默认值为null。Fix#110#111修复Redis::select无法正常切换数据库的问题#131修复Router::addGroup下无法正常设置中间件配置的问题#132修复request->hasFile判断条件错误Issue#135修复issueresponse->redirect调整外部链接时无法正确生成链接#139修复ConsulAgent的URI无法自定义的问题#148修复migrates文件夹不存在时无法生成迁移模板的问题#169修复处理请求时无法正确处理数组类型参数#170修复了路由不存在时WebSocketServer无法正确捕获异常的问题。删除#131。去掉Routeroptions中的server参数关于HyperfHyperf是一个基于Swoole4.3+的高性能、高灵活性的PHP协程框架,内置协程服务器和大量常用组件,性能较之有质的提升基于PHP-FPM的传统框架。在提供超高性能的同时,还保持了极其灵活的可扩展性。标准组件均基于PSR标准,基于强大的依赖注入设计,保证了大部分组件或类的可替换和可重用。框架组件库除了常见的MySQL客户端、Redis客户端协程版本外,还为您准备了EloquentORM版本、JSONRPC服务端和客户端、GRPC服务端和客户端、Zipkin(OpenTracing)客户端、GuzzleHTTP客户端、Elasticsearch客户端、Consul客户端、ETCD客户端、AMQP组件、Apollo配置中心、阿里云ACM应用配置管理、基于令牌桶算法的限流器、通用连接池、熔断器、Swagger文档生成等组件,省去了实现的麻烦自己对应的协程版本。Hyperf还提供了基于PSR-11的依赖注入容器、注解、AOP面向切面编程、基于PSR-15的中间件、自定义流程、基于PSR-14的事件管理器、Redis/RabbitMQ消息队列、自动模型缓存、PSR-16基于缓存等非常方便的功能,满足丰富的技术场景和业务场景,开箱即用。框架的初衷虽然基于PHP语言开发的框架现在已经是百花齐放的时代,但是仍然没有看到一个优雅设计与超高性能并存的完美框架,也没有看到一个框架真正为PHP微服务铺路,这是Hyperf和团队成员的初衷,我们会为此继续投入和努力,欢迎大家加入我们一起参与开源建设。设计理念Hyperspeed+Flexibility=Hyperf,从名字上我们就把超高速和灵活性视为Hyperf的基因。针对超高速,我们基于Swoole协程,在框架设计上做了很多优化,保证了超高性能的输出。为了灵活性,我们基于Hyperf强大的依赖注入组件。组件全部基于PSR标准契约和Hyperf定义的契约,使得框架中的大部分组件或类都是可替换的。基于以上特性,Hyperf将具有丰富的可能性,例如实现Web服务、网关服务、分布式中间件、微服务架构、游戏服务器、物联网(IOT)等。完整的文档我们在文档建设,解决文档缺失带来的各种问题。文档还提供了大量示例,对新手同样友好。生产可用性我们对组件进行了大量的单元测试,以确保逻辑正确,同时保持高质量的文档。Hyperf正式开通前(2019年6月20日),已经在C轮和B轮互联网公司推出多项服务,并以稳定的姿态完美运行了半年多。经过严酷的生产环境考验,我们正式对外开放项目。官网与Github交流<-点星支持我们Hyperf官网QQ群:862099724