Hyperf 发布 v1.1.4 版本,增加 Metric 监控组件
更新内容
本周更新主要为 服务监控
,已接入 Prometheus
StatsD
和 InfluxDB
。
微服务治理的一个核心需求便是服务可观察性。作为微服务的牧羊人,要做到时刻掌握各项服务的健康状态,并非易事。云原生时代这一领域内涌现出了诸多解决方案。本组件对可观察性当中的重要支柱遥测与监控进行了抽象,方便使用者与既有基础设施快速结合,同时避免供应商锁定。
感谢作者 Reasno
直接访问 官网 hyperf.io 或 文档 hyperf.wiki 查看。
新增
- #778
Hyperf\Testing\Client
新增PUT
和DELETE
方法。 - #784 新增服务监控组件。
- #795
AbstractProcess
增加restartInterval
参数,允许子进程异常或正常退出后,延迟重启。 - #804
Command
增加事件BeforeHandle
AfterHandle
和FailToHandle
。
变更
- #793
Pool::getConnectionsInChannel
方法由protected
改为public
. - #811 命令
di:init-proxy
不再主动清理代理缓存,如果想清理缓存请使用命令vendor/bin/init-proxy.sh
。
修复
- #779 修复
JPG
文件验证不通过的问题。 - #787 修复
db:seed
参数--class
多余,导致报错的问题。 - #795 修复自定义进程在异常抛出后,无法正常重启的BUG。
- #796 修复
etcd
配置中心enable
即时设为false
,在项目启动时,依然会拉取配置的BUG。
优化
关于 Hyperf
Hyperf 是基于 Swoole 4.4+
实现的高性能、高灵活性的 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM
的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是 可替换
与 可复用
的。
框架组件库除了常见的协程版的 MySQL 客户端
、Redis 客户端
,还为您准备了协程版的 Eloquent ORM
、WebSocket 服务端及客户端
、JSON RPC 服务端及客户端
、GRPC 服务端及客户端
、Zipkin (OpenTracing) 客户端
、Guzzle HTTP 客户端
、Elasticsearch 客户端
、Consul 客户端
、ETCD 客户端
、AMQP 组件
、Apollo 配置中心
、阿里云 ACM 应用配置管理
、ETCD 配置中心
、基于令牌桶算法的限流器
、通用连接池
、熔断器
、Swagger 文档生成
、Swoole Tracker
、Blade 和 Smarty 视图引擎
、Snowflake 全局ID生成器
等组件,省去了自己实现对应协程版本的麻烦。
Hyperf 还提供了 基于 PSR-11 的依赖注入容器
、注解
、AOP 面向切面编程
、基于 PSR-15 的中间件
、自定义进程
、基于 PSR-14 的事件管理器
、Redis/RabbitMQ 消息队列
、自动模型缓存
、基于 PSR-16 的缓存
、Crontab 秒级定时任务
、i18n 国际化
、Validation 表达验证
等非常便捷的功能,满足丰富的技术场景和业务场景,开箱即用。
框架初衷
尽管现在基于 PHP 语言开发的框架处于一个百花争鸣的时代,但仍旧未能看到一个优雅的设计与超高性能的共存的完美框架,亦没有看到一个真正为 PHP 微服务铺路的框架,此为 Hyperf 及其团队成员的初衷,我们将持续投入并为此付出努力,也欢迎你加入我们参与开源建设。
设计理念
Hyperspeed + Flexibility = Hyperf
,从名字上我们就将 超高速
和 灵活性
作为 Hyperf 的基因。
- 对于超高速,我们基于 Swoole 协程并在框架设计上进行大量的优化以确保超高性能的输出。
- 对于灵活性,我们基于 Hyperf 强大的依赖注入组件,组件均基于 PSR 标准 的契约和由 Hyperf 定义的契约实现,达到框架内的绝大部分的组件或类都是可替换的。
基于以上的特点,Hyperf 将存在丰富的可能性,如实现 单体 Web 服务,API 服务,网关服务,分布式中间件,微服务架构,游戏服务器,物联网(IOT)等。
文档齐全
我们投入了大量的时间用于文档的建设,以解决各种因为文档缺失所带来的问题,文档上也提供了大量的示例,对新手同样友好。
Hyperf 官方开发文档
生产可用
我们为组件进行了大量的单元测试以保证逻辑的正确,目前存在 1145
个单测共 3385
个断言条件,同时维护了高质量的文档,在 Hyperf 正式对外开放(2019年6月20日)之前,便已经过了严酷的生产环境的考验,我们才正式的对外开放该项目,现在已有很多的大型互联网企业都已将 Hyperf 部署到了自己的生产环境上并稳定运行。
官网及交流
Github 👈👈👈👈👈 点 Star 支持我们
Gitee 码云 👈👈👈👈👈 点 Star 支持我们
QQ 群: 862099724

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿姆达尔Law对系统性能提升的定义
阿姆达尔定律 = Amdahl's Law,本篇重点是介绍该定律。 背景 系统架构中对系统性能设计的解决方案之一:“阿姆达尔方案”。书中还有个完全看不懂的公式,理解起来脑仁痛(不懂...)但发现很有价值,便系统的学习一下。 例题试先做一下,带着疑问点再看定律。 例题:假设某一功能的处理时间为整体系统运行时间的60%,若使该功能的处理速度提高至原来的5倍,则根据阿姆达尔定律,整个系统的处理速度可提高至原来的多少倍? 定理公式 优化前系统总耗时To(old),优化后系统总耗时Tn(new),加速比S=To/Tn。 Speedup = timeOld / timeNew 详细公式: S = 1 / ((1-C) + C/S) S(speedup),加速比。 C,原系统中能够改进的部分占总部分的比例,也可以说能够改进部分运行时间占总系统运行时间的比例,比如:75%。 S,改进后系统的提升比例,比如:5倍。 举例分解 上面的例子细化一下:程序A中子程序B的运行时间占A的60%,子程序B优化提升了5倍速度,那么程序A将多少? 程序A初始假设速度可为1,如下: 1/((1-0.6)+0.6/5) =...
- 下一篇
大数据和人工智能:3个真实世界的用例
大数据和人工智能够帮助企业以新的方式改善客户体验。 人工智能和大数据之间的关系是双向的。可以肯定的是:人工智能的成功很大程度上取决于高质量的数据,同时,管理大数据并从中获取价值越来越多地依靠(诸如机器学习或自然语言处理等)人工智能技术来解决对人类而言难以负担的问题。 正如Anexinet公司高级数字策略师Glenn Gruber所述,这是一个“良性循环”。大数据中的“大”曾经被视为一种挑战而不是机遇,但随着企业开始推广机器学习和其他人工智能学科的应用,这种情况正在发生变化。 Gruber解释说,“如今,我们想要尽可能多的数据,这不仅是为了更好地洞察我们试图解决的业务问题,而且因为我们通过机器学习模型输入的数据越多,它们得到的结果就越好。” 当大数据遇到人工智能:跨行业的用例 以下深入地了解这个更广泛的循环中的一个部分:如何将人工智能当作处理大数据的强大杠杆的示例,无论是用于分析、改进的客户体验、新的效率还是其他目的。人们需要考虑以下人工智能和大数据应用的三个重要因素: 1.从非标准化来源收集结构化数据 大数据面临很多的挑战,例如以一种可用的、具有成本效益的方式存储大数据。当涉及到非结构...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范