本周更新内容主要是增加了一些新特性,修复了部分组件的bug,持续提升Hyperf的稳定性。发布于2.0.12版本,建议用户使用以下命令更新此版本。composerupdate"hyperf/*"-o直接访问官网hyperf.io或文档hyperf.wiki查看更新内容Added#2512为hyperf/database组件方法MySqlGrammar::compileColumnListing新增返回字段column_type。Fixed#2490修复了流式客户端在hyperf/grpc-client组件中无法正常工作的问题。#2509修复hyperf/database组件,使用小驼峰模式后,访问器无法正常工作。#2535修复在hyperf/database组件中,使用gen:model后,accessor生成的注解@property会被morphTo覆盖的问题。#2546修复在hyperf/db-connection组件中使用leftjoin等复杂查询后,MySQL连接无法正常释放的问题。优化#2490优化hyperf/grpc-client组件中的异常和单元测试。关于HyperfHyperf是一个基于Swoole4.5+的高性能、高灵活性的PHP协程框架。它内置协程服务器和大量常用组件。同时,它还保持着极其灵活的可扩展性。标准组件基于PSR标准实现,基于强大的依赖注入设计,保证大部分组件或类可替换、可重用。框架组件库除了常见的协程版MySQL客户端和Redis客户端,还为大家准备了协程版EloquentORM、WebSocket服务端和客户端、JSONRPC服务端和客户端、GRPC服务端和客户端Client、OpenTracing(Zipkin、Jaeger)Client、GuzzleHTTPClient、ElasticsearchClient、Consul、Nacos服务中心、ETCDClient、AMQP组件、Nats组件、Apollo、ETCD、Zookeeper、Nacos和阿里云ACM配置中心、基于令牌桶算法的限流器、通用连接pool、fuse、Swagger文档生成、SwooleTracker、Blade、Smarty、Twig、Plates和ThinkTemplate视图引擎、Snowflake全局ID生成器、Prometheus服务监控等组件,省去了自己实现对应协程版本的麻烦.Hyperf还提供了基于PSR-11的依赖注入容器、注解、AOP面向方面编程、基于PSR-15的中间件、自定义流程、基于PSR-14的事件管理器、Redis/RabbitMQ消息队列和自动模型缓存、PSR基于-16的缓存、Crontab二级定时任务、Session、i18n国际化、Validation表单验证等非常便捷的功能,满足丰富的技术和业务场景,开箱即用。框架的初衷虽然基于PHP语言开发的框架现在已经是百花齐放的时代,但是仍然没有看到一个优雅设计与超高性能并存的完美框架,也没有看到一个框架真正为PHP微服务铺路,这是Hyperf和团队成员的初衷,我们会为此继续投入和努力,欢迎大家加入我们一起参与开源建设。设计理念Hyperspeed+Flexibility=Hyperf,从名字上我们就把超高速和灵活性视为Hyperf的基因。针对超高速,我们基于Swoole协程,在框架设计上做了很多优化,保证了超高性能的输出。为了灵活性,我们基于Hyperf强大的依赖注入组件。组件全部基于PSR标准契约和Hyperf定义的契约,使得框架中的大部分组件或类都是可替换的。基于以上特点,Hyperf将有丰富的可能性,比如实现单体web服务、API服务、网关服务、分布式中间件、微服务架构、游戏服务器、物联网(IOT)等。完整的文档我们投入了很多文档建设时间,提供优质的文档体验,解决文档缺失带来的各种问题。文档还提供了大量示例,对新手同样友好。Hyperf官方开发文档可用于生产。我们对组件进行了大量的单元测试,以保证逻辑的正确性。目前,有1532个单元测试,总共有4763个断言条件。Hyperf是一个经历过严酷生产环境考验的项目。许多大型互联网公司的生产环境都部署了Hyperf并稳定运行。
