imi v1.0.12 发布,优化框架底层及请求上下文处理
imi 是基于 PHP Swoole 的高性能协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 服务的开发。
在 Swoole 的加持下,相比 php-fpm 请求响应能力,I/O密集型场景处理能力,有着本质上的提升。
imi 框架拥有丰富的功能组件,可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。
毫秒级的注解及代码热更新,让你在开发时只管一把梭,体验与 fpm 下开发并无二致,保存就刷新,立马看到效果。
与其他专注微服务领域的 Swoole 框架不同,imi 专注单体应用开发。原因很简单:大部分公司都不需要上微服务,单体应用足矣。
imi 框架第一个版本 v0.0.1 首发于 2018 年 6 月 21 日
本周主要优化了框架底层、请求上下文处理性能,另外做了一些功能上的小增强。
测试用例做到全覆盖:PHP 7.1、7.2、7.3、7.4、nightly、Swoole 4.3、4.4、master
新增
-
验证注解新增支持:非必验证参数,只有当值存在才验证
-
新增 File::putContents() 方法,写入内容到文件,如果目录不存在自动创建多级目录
-
File::createFile() 新增 $content 参数
-
新增 ConnectContext::muiltiSet() 方法批量设置上下文数据
-
新增 RequestContext::use() 方法
优化
-
优化一波框架底层性能
-
优化一些请求上下文处理性能
-
优化 StatementManager
-
支持 @app.db.statement.cache 配置是否开启 statement 缓存,默认开启
-
ConnectContext::create() 支持传入初始化参数
修复
- 修复在自定义进程中操作 ConnectContext、ConnectGroup 导致进程卡死问题
开始使用
创建 Http Server 项目:composer create-project imiphp/project-http
创建 WebSocket Server 项目:composer create-project imiphp/project-websocket
创建 TCP Server 项目:composer create-project imiphp/project-tcp
创建 UDP Server 项目:composer create-project imiphp/project-udp
完全开发手册:https://doc.imiphp.com/
imi 组件库:https://github.com/imiphp
imi 官方指定 Http 客户端(替代 Curl):https://github.com/yurunsoft/yurunhttp
欢迎各路新人和大佬的加入贡献代码的行列中,修正错别字、错误拼写、提交代码,我们全都欢迎~
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
YurunHttp v3.2.1 发布,支持 WebSocket 的 Http 客户端
YurunHttp 是开源的 PHP HTTP 类库,支持链式操作,简单易用。 支持所有常见的 GET、POST、PUT、DELETE、UPDATE 等请求方式,支持上传下载、设置和读取 header、Cookie、请求参数、失败重试、限速、代理、证书等。 3.0 版完美支持 Curl、Swoole 协程;3.2 版支持 Swoole WebSocket 客户端。 git仓库中test目录里是示例代码! 更新日志(v3.2.1): 修复上传文件时,参数名和文件名混乱问题 Composer 本项目可以使用composer安装,遵循psr-4自动加载规则,在你的composer.json中加入下面的内容 { "require": { "yurunsoft/yurun-http": "~3.2" } } 然后执行composer update安装。 之后你便可以使用include "vendor/autoload.php";来自动加载类。(ps:不要忘了namespace) 用法 简单调用 <?php use Yurun\Util\HttpRequest; $h...
- 下一篇
Apache Ignite 2.7.6 发布,分布式数据库、缓存和处理平台
Apache Ignite 2.7.6 发布了,Ignite 是一个以内存为中心的分布式HTAP数据库、缓存和处理平台,支持事务、分析以及流式负载,可以在PB级数据上享有内存级的性能。 这是一个小版本更新,主要解决了如下的问题: Ignite: 未配置IGNITE_HOME时,调整默认的持久化目录,原生持久化文件不再存储于临时目录; 修复了执行在主复合键的一部分上使用等式谓词的SELECT查询时,即使匹配多行也会返回单行数据的问题; 修复了在检查点执行过程中可能导致数据损坏的问题; 修复了共享缓存组错误计算行大小,导致树损坏的问题; 通过在交换历史记录中优化GridDhtPartitionsFullMessage映射来减少Java堆占用空间; 修复了持有已销毁缓存的过时节点导致集群故障的问题; 修复了删除现有索引并使用其他值重建后,无法更改现有索引的inline_size属性的问题; 修复了未设置JAVA_HOME时可能导致control.sh脚本无法执行的问题; 修复了开启了持久化并禁用WAL MMAP时可能导致节点故障的问题; 修复了在检查点标记阶段杀掉节点可能导致PDS损坏的问题...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装