Hyperf 发布 v1.1.10 版本,企业级的 PHP 微服务云原生协程框架
更新内容
本周更新主要为一个 Bugfix 版本,我们修复了一些组件的 🐛Bug 和做了一些调整,发布于 1.1.10 版,建议使用 1.1 的用户更新。
直接访问 官网 hyperf.io 或 文档 hyperf.wiki 查看更新内容。
修复
- #1104 修复了 Guzzle 客户端的重试中间件的状态码识别范围为 2xx;
- #1105 修复了 Retry 组件在重试尝试前不还原管道堆栈的问题;
- #1106 修复了数据库在开启
sticky
模式时连接回归连接池时没有重置状态的问题; - #1119 修复 TCP 协议下的 JSONRPC Server 在解析 JSON 失败时无法正确的返回预期的 Error Response 的问题;
- #1124 修复 Session 中间件在储存当前的 URL 时,当 URL 以
/
结尾时会忽略斜杠的问题;
变更
- #1108 重命名
Hyperf\Tracer\Middleware\TraceMiddeware
为Hyperf\Tracer\Middleware\TraceMiddleware
; - #1108 升级
Hyperf\ServiceGovernance\Listener\ServiceRegisterListener
类的成员属性和方法的等级为protected
,以便更好的重写相关方法;
关于 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 官方开发文档
生产可用
我们为组件进行了大量的单元测试以保证逻辑的正确,目前存在 1253
个单测共 3700
个断言条件,同时维护了高质量的文档,在 Hyperf 正式对外开放(2019年6月20日)之前,便已经过了严酷的生产环境的考验,我们才正式的对外开放该项目,现在已有很多的大型互联网企业都已将 Hyperf 部署到了自己的生产环境上并稳定运行。
官网及交流
Github 👈👈👈👈👈 点 Star 支持我们
Gitee 码云 👈👈👈👈👈 点 Star 支持我们
Hyperf 官网
Hyperf 文档
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Hunt Redis 1.0.0 发布,D 语言 Redis 客户端
Hunt Redis 是使用 D 语言开发的 Redis 客户端,非常容易使用,API 移植自 Java 界最易用的 Redis 客户端项目 Jedis ,兼容 Redis 2.8.x / 3.x / 4.x / 5.x 。 目前已经经过一段时间的测试正式发布 1.0.0 版本,欢迎体验,下方有示例代码。 基础特性: 排序 链接管理 不同类型的value的命令处理 String类型的命令处理 Hashes类型的命令处理 Lists类型的命令处理 Sets类型的命令处理 Sorted Sets类型的命令处理 事务 批量命令处理 订阅/发布 持久化的控制命令 远程控制命令 分片(MD5,MurmurHash) 集群的Key-tags功能 集群的批量命令处理 脚本的批量命令处理 Redis集群支持 使用示例: import hunt.redis; import std.stdio : writeln; void main() { auto redis = new Redis("localhost"); redis.set("foo", "bar"); stri...
- 下一篇
跑的好好的 Java 进程,怎么突然就瘫痪了 | 12月12号栖夜读
点击订阅云栖夜读日刊,专业的技术干货,不容错过! 阿里专家原创好文 1.跑的好好的 Java 进程,怎么突然就瘫痪了 用 Java 无法做出类似 Redis 这样的产品。Java 的内存回收机制使我们在编写代码时不需要关注对象的回收,同时加大了内存回收的消耗,标记复制需要做内存拷贝,标记清除算法则需要 stop the world 。所以我们在使用缓存的时候,量稍微大一些就需要借助类似 Redis 这样的中间件帮我们处理了。作为 Javaer ,我们享受了自动内存回收的安逸,同时也需要多了解下内存优化的方法。阅读更多》》 2.阿里巴巴 Service Mesh 落地的架构与挑战 云原生已成为整个阿里巴巴经济体构建面向未来的技术基础设施,Service Mesh 作为云原生的关键技术之一,顺利完成在 双11 核心应用严苛而复杂场景下的落地验证。本文作者将与大家分享在完成这一目标过程中我们所面临和克服的挑战。阅读更多》》 3.聚水潭是如何基于AnalyticDB for PostgreSQL 构筑海量实时数仓平台的 一篇干货好文,值得一读!阅读更多》》 4.平头哥首席科学家谢源当选ACM ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7设置SWAP分区,小内存服务器的救世主
- Red5直播服务器,属于Java语言的直播服务器
- Docker快速安装Oracle11G,搭建oracle11g学习环境