Hyperf 发布 v1.1.25版本,企业级的 PHP 微服务云原生协程框架
更新内容
本周主要增加了 Coordinator 机制,可以更加优雅的启动和停止服务。同时我们也修复了一些 🐛Bug, 继续提升 hyperf 的稳定性, 发布于 1.1.25 版, 建议用户更新此版本
直接访问 官网 hyperf.io 或 文档 hyperf.wiki 查看更新内容
新增
- #1501 #1532 添加
Symfony
命令行事件触发器,使之可以与hyperf/event
组件结合使用。 - #1502 为注解
Hyperf\AsyncQueue\Annotation\AsyncQueueMessage
添加maxAttempts
参数,用于控制消息失败时重复消费的次数。 - #1510 添加
Hyperf/Utils/CoordinatorManager
,用于提供更优雅的启动和停止服务,服务启动前不响应请求,服务停止前,保证某些循环逻辑能够正常结束。 - #1517 为依赖注入容器的懒加载功能添加了对接口继承和抽象方法继承的支持。
- #1529 处理
response cookies
中的SameSite
属性。
修复
- #1494 修复单独使用
Redis
组件时,注释@mixin
会被当成注解的BUG。 - #1499 修复引入
hyperf/translation
组件后,hyperf/constants
组件的动态参数不生效的 BUG。 - #1504 修复
RPC
代理客户端无法正常处理返回值为nullable
类型的方法。 - #1507 修复
hyperf/consul
组件的catalog
注册方法调用会失败的 BUG。
关于 Hyperf
Hyperf 是基于 Swoole 4.4+
实现的高性能、高灵活性的 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM
的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是 可替换
与 可复用
的。
框架组件库除了常见的协程版的 MySQL 客户端
、Redis 客户端
,还为您准备了协程版的 Eloquent ORM
、WebSocket 服务端及客户端
、JSON RPC 服务端及客户端
、GRPC 服务端及客户端
、OpenTracing(Zipkin, Jaeger) 客户端
、Guzzle HTTP 客户端
、Elasticsearch 客户端
、Consul 客户端
、ETCD 客户端
、AMQP 组件
、Nats 组件
、Apollo、ETCD、Zookeeper 和阿里云 ACM 的配置中心
、基于令牌桶算法的限流器
、通用连接池
、熔断器
、Swagger 文档生成
、Swoole Tracker
、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 官方开发文档
生产可用
我们为组件进行了大量的单元测试以保证逻辑的正确,目前存在 1342
个单测共 3961
个断言条件,Hyperf 是一款经历过严酷的生产环境考验的一个项目,目前已有很多的大型互联网企业都已将 Hyperf 部署到了自己的生产环境上并稳定运行。
官网及交流
Github 👈👈👈👈👈 点 Star 支持我们
Gitee 码云 👈👈👈👈👈 点 Star 支持我们
Hyperf 官网
Hyperf 文档
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Jboot v3.1.6 发布,修复 RPC 的一些配置问题
Jboot 是一个基于 JFinal、JFinal-Undertow、Dubbo 等开发的微服务框架,帮助开发者降低微服务开发门槛。同时完美支持在 idea、eclipse 下多 maven 模块,对 java 代码、html、css、js 等资源文件进行热加载。爽爽开发,快乐生活。 Jboot 3.1.x 主要更新如下: 一:RPC 完全重构 Jboot 3.1.x对 RPC 进行了完全重构,在配置方便需要变更才能正常使用,API 没有变,所有可以平滑升级到 Jboot 3.1.x,虽然 API 没有改变,但是实现发送了彻底的改变。 对于 Dubbo,在 2.7.x 下新增了很多功能,比如元数据中心、配置中心等功能,Jboot 进行重构后,支持对 Dubbo 的所有内容进行配置,同时支持单个 Application 下有多注册中心、多服务协议等支持。配置上更加灵活。 二:新增门户网关 Jboot v3.1.0 还新增了门户网关,网关支持了 host、path、query等不同的条件配置,性能极高,同时支持基于 Sentinel 下的分布式限流、自定义网关拦截器等等功能。 三:分布式缓...
- 下一篇
【云栖号案例 | 物联网&人工智能】超越软件上云 讲述每天1亿公里行驶背后的大生意
云栖号案例库:【点击查看更多上云案例】不知道怎么上云?看云栖号案例库,了解不同行业不同发展阶段的上云方案,助力你上云决策! 大家都听过物联网,它联接我们身边的所有物体,包括汽车车辆、家用电器、甚至门窗等等,预计到2020年,全球将有超过百亿的物体联接入网。车联网是其中的细分市场,车辆联接入网后,我们可以随时看到入网车辆的位置、速度、油耗以及车辆运行状态等等信息。 车联网的发展主要有两个趋势: 第一个,出租车/公共汽车/危险品运输车/工程机械车/货车等营运车辆逐步联网化,这一方面是出于政府监管的需要,另外一方面也是出于企业管理的需要,企业需要实时监控管理它运营车辆的信息。第二个趋势是实现网络协同,就是把车联网平台和企业自身的ERPOA等系统对接,利用车联网数据实时反馈企业资源的流动和管理,比如中石油在汽油油罐车到各个加油站的分发运输过程中,不但需要通过温度、压力传感器实时的了解油罐车的安全运输情况,更需要实时监控油罐车的运输路径和汽油装载量,并把它和中石油ERP系统进行对接,可以实时的调度指挥哪些油罐车去哪里加油、卸油以及装多少油,卸多少油,车内还剩多少油等等。 所以车联网被认为是物联网...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS6,CentOS7官方镜像安装Oracle11G
- 设置Eclipse缩进为4个空格,增强代码规范
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器