内容简介:更新内容 本周更新主要为增加了一个基于 Snowflake 算法的全局唯一 ID 生成器组件 hyperf/snowflake,Snowflake 是一个由 Twitter 提出的分布式全局 ID 生成算法,该组件实现了 Snowflake 算法并设计得易于使用,...
更新内容
本周更新主要为增加了一个基于 Snowflake 算法的全局唯一 ID 生成器组件 hyperf/snowflake,Snowflake 是一个由 Twitter 提出的分布式全局 ID 生成算法,该组件实现了 Snowflake 算法并设计得易于使用,同时在设计上提供了很好的可扩展性,可以很轻易的将该组件转换成其它基于 Snowflake 算法的变体算法,同时我们也修复了一些其它组件的 ????Bug,发布于 1.0.14 版。
关于 Snowflake 组件更详细的说明可查看相关文档 Snowflake 组件文档,或直接访问 官网 https://hyperf.io 或 文档 https://doc.hyperf.io 查看。
新增
- #389 #419 #432 #524 新增 Snowflake 官方组件, Snowflake 是一个由 Twitter 提出的分布式全局唯一 ID 生成算法,hyperf/snowflake 组件实现了该算法并设计得易于使用,同时在设计上提供了很好的可扩展性,可以很轻易的将该组件转换成其它基于 Snowflake 算法的变体算法;
- #525 为
Hyperf\HttpServer\Contract\ResponseInterface
增加一个download()
方法,提供便捷的下载响应返回;
变更
- #482 生成模型文件时,当设置了
refresh-fillable
选项时重新生成模型的fillable
属性,同时该命令的默认情况下将不会再覆盖生成fillable
属性; - #501 当
Mapping
注解的path
属性为一个空字符串时,那么该路由则为/prefix
; - #513 如果项目设置了
app_name
属性,则进程名称会自动带上该名称; - #508 #526 当在非协程环境下执行
Hyperf\Utils\Coroutine::parentId()
方法时会返回一个null
值;
修复
- #479 修复了当 Elasticsearch client 的
host
属性设置有误时,返回类型错误的问题; - #514 修复当 Redis 密码配置为空字符串时鉴权失败的问题;
- #527 修复 Translator 无法重复翻译的问题;
关于 Hyperf
Hyperf 是基于 Swoole 4.3+
实现的高性能、高灵活性的 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 Enterprise 企业版
、Blade 和 Smarty 视图引擎
、Snowflake 全局ID生成器
等组件,省去了自己实现对应协程版本的麻烦。
Hyperf 还提供了 基于 PSR-11 的依赖注入容器
、注解
、AOP 面向切面编程
、基于 PSR-15 的中间件
、自定义进程
、基于 PSR-14 的事件管理器
、Redis/RabbitMQ 消息队列
、自动模型缓存
、基于 PSR-16 的缓存
、Crontab 定时任务
、国际化
等非常便捷的功能,满足丰富的技术场景和业务场景,开箱即用。
框架初衷
尽管现在基于 PHP 语言开发的框架处于一个百花争鸣的时代,但仍旧未能看到一个优雅的设计与超高性能的共存的完美框架,亦没有看到一个真正为 PHP 微服务铺路的框架,此为 Hyperf 及其团队成员的初衷,我们将持续投入并为此付出努力,也欢迎你加入我们参与开源建设。
设计理念
Hyperspeed + Flexibility = Hyperf
,从名字上我们就将 超高速
和 灵活性
作为 Hyperf 的基因。
- 对于超高速,我们基于 Swoole 协程并在框架设计上进行大量的优化以确保超高性能的输出。
- 对于灵活性,我们基于 Hyperf 强大的依赖注入组件,组件均基于 PSR 标准 的契约和由 Hyperf 定义的契约实现,达到框架内的绝大部分的组件或类都是可替换的。
基于以上的特点,Hyperf 将存在丰富的可能性,如实现 单体 Web 服务,API 服务,网关服务,分布式中间件,微服务架构,游戏服务器,物联网(IOT)等。
文档齐全
我们投入了大量的时间用于文档的建设,以解决各种因为文档缺失所带来的问题,文档上也提供了大量的示例,对新手同样友好。
Hyperf 官方开发文档
生产可用
我们为组件进行了大量的单元测试以保证逻辑的正确,目前存在 651
个单测共 2021
个断言条件,同时维护了高质量的文档,在 Hyperf 正式对外开放(2019年6月20日)之前,便已经过了严酷的生产环境的考验,我们才正式的对外开放该项目。
官网及交流
Github ???? 点 Star 支持我们
Gitee 码云 ???? 点 Star 支持我们
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- Android快速开发框架,基础库,样式库,组件化,组件集成
- 框架组件,究竟要不要自研?
- Android组件化框架搭建
- Android组件化框架项目详解
- Web 组件即将取代前端框架?!| 技术头条
- 网易严选跨框架组件开发实践
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。