imi协程开发框架是基于 Swoole 的 PHP 协程开发框架,它支持 Http、Http2、WebSocket、TCP、UDP、MQTT 等主流协议的服务开发,特别适合互联网微服务、即时通讯聊天im、物联网等场景!。
HttpApi、WebSocket、TCP、UDP、MQTT 服务器
MySQL 连接池 (主从+负载均衡)
Redis 连接池 (主从+负载均衡)
超好用的 ORM (Db、Redis、Tree)
毫秒级热更新
AOP
Bean 容器
缓存 (Cache)
配置读写 (Config)
枚举 (Enum)
事件 (Event)
门面 (Facade)
验证器 (Validate)
锁 (Lock)
日志 (Log)
异步任务 (Task)
Redis、MySQL
v2.1.0
2022 年来了,imi 2.0 经历漫长的开发过程,正式发布后又持续迭代了 4 个月,目前已经比较稳定。
imi 2.0、1.3 作为 LTS 版本,为保持稳定性,持续提供问题修复、安全修复,不再提供功能更新,暂无终止维护时间表。
imi v2.1.0 带来了两个新特性:宏定义和异步日志。并且将最低支持的 Swoole 版本提升至 v4.8,PHP 版本要求保持不变,依然是 PHP >= 7.4。
异步日志
顾名思义,不再需要被日志记录的 IO 拖慢接口响应,一切都是异步的。
只需要在 @app.logger 中增加:'async' => true 就可以启用。
该特性仅 Swoole 有效。
宏定义
支持在 imi 框架中使用宏定义。
支持在 PHP 代码中使用类似 C/C++ 中的宏,进行代码预编译。
可以方便兼容不同版本和环境下运行的 PHP 代码。
在一些场景可以通过预定义常量,来提升性能,减少运行时判断。
本组件基于 Yurunsoft/php-macro 组件,该组件由宇润主导开发。
更新内容
增强
支持模型自定义关联
支持设置 Statement 最大缓存数量
优化
优化解决 Statement 缓存数量过多问题
优化查询构建器的 limit() 操作值也通过预处理绑定
优化分页查询,统计记录数量时移除排序提升性能
deepin怎么注销系统? deepin系统注销与切换用户的方法
Manjaro linux怎么调鼠标速度? Manjaro鼠标设置光标速度的技巧
Kali Linux鼠标光主题怎么修改? 修改鼠标光标主题的技巧
deepin系统版本号怎么看? deepin系统查看系统版本信息的技巧
Linux网卡无法启动报错RTNETLINK answers File exists怎么办?
深度操作系统Deepin20.2.1发布(附下载和更新日志)