内容简介:最近 imi 主要更新内容是针对数据库、Redis、模型,因为实战中发现了很多理想化的不足,为此加入了一些新特性支持。 数据库支持主从啦!原连接池名后加.slave即为从库配置,非必设。如果配置了从库,默认查询走从...
最近 imi 主要更新内容是针对数据库、 Redis 、模型,因为实战中发现了很多理想化的不足,为此加入了一些新特性支持。
数据库支持主从啦!原连接池名后加.slave即为从库配置,非必设。如果配置了从库,默认查询走从库,增删改走主库。如果在事务中,默认都走主库。
v0.1.1 更新内容:
新增
新增支持配置数据库主从连接池,智能选择对应库连接
原连接池名后加.slave即为从库配置,非必设;如果配置了,默认查询走从库,增删改走主库;如果在事务中,默认都走主库
新增模型写入数据处理前后事件(
BeforeParseData
、AfterParseData
)新增
ModelEvents::AFTER_QUERY
事件监听接口新增支持
ExtractProperty
注解,提取字段中的属性到当前模型新增模型序列化配置注解(
Serializable
、Serializables
)新增支持为
Transaction
注解,设定事务类型及是否自动提交事务
Transaction(autoCommit="自动提交事务true/false,默认为true")
事务类型:
事务嵌套(默认)
Transaction(type=TransactionType::NESTING)
该方法必须在事务中被调用
Transaction(type=TransactionType::REQUIREMENT)
如果当前不在事务中则开启事务
Transaction(type=TransactionType::AUTO)
新增支持 Swoole Redis 使用
scan object sort migrate hscan sscan zsca
新增启动时显示系统、 PHP 、Swoole、时区信息
新增服务启动时显示工作进程数量
优化
调整__CLASS__、get_called_class()为面向对象写法
EventParam
支持引用传参ModelEvents::AFTER_FIND
事件支持修改model增加事务注解处理容错判断
新增数据库连接回收时,回滚事务
当在模型类中使用
Transaction
注解时,不指定连接池名称,则获取模型连接池名称增加数据库资源open方法返回值
优化Db容错
调整和优化连接池,现在会抛出获取资源失败的异常
调整 SQL 信息格式
新增
IHashCode
、THashCode
,连接池资源用它调整
EventParam
类属性命名,减少冲突可能性调整使用 Redis 的键命名(连接上下文、连接分组、Session)
调整连接上下文采用 HASH 存储
调整连接分组采用 SET 存储
修复
修复模型类非static方法下,调用事件存在的问题
修复模型类非static方法下,调用
query()
方法错误的问题修复模型关联更新
orphanRemoval
失效问题修复模型序列化问题
修复 IEvent 方法带有 static 的问题
修复一处引用返回值潜在问题
不兼容更改
调整模型静态方法事件名
原本为
类名事件名
,现在是类名:事件名
修正数据库操作 join 方法默认改为 inner join
介绍
IMI 是基于 Swoole 开发的协程 PHP 开发框架,完美支持 Http、WebSocket、TCP、UDP 开发,拥有常驻内存、协程异步非阻塞IO等优点。
IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手。
IMI 框架底层开发使用了强类型,易维护,性能更强。支持 Aop ,支持使用注解和配置文件注入,完全遵守 PSR-3、4、7、11、15、16 标准规范。
框架的扩展性强,开发者可以根据实际需求,自行开发相关驱动进行扩展。不止于框架本身提供的功能和组件!
官网:https://www.imiphp.com/
文档手册:https://doc.imiphp.com/
代码仓库:
码云:https://gitee.com/yurunsoft/IMI
Github:https://github.com/Yurunsoft/IMI
空项目:https://gitee.com/yurunsoft/empty-imi-demo
功能Demo:https://gitee.com/yurunsoft/imi-demo
寻有缘人
想要加入我们吗?开源项目不能只靠一两个人,而是要靠大家的努力来完善~
我们需要你的加入,你可以做的事(包括但不限于以下):
纠正拼写、错别字
完善注释
bug修复
功能开发
教程、博客分享
最新代码以
dev
分支为准,提交PR
也请合并至dev
分支!
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上所述就是小编给大家介绍的《imi v0.1.1 发布:支持主从,DB 及模型大量提升和改进》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。