Skip to content

支持 Swoole 4.1.0 一键协程化,40余项改进

Compare
Choose a tag to compare
@Yurunsoft Yurunsoft released this 24 Aug 01:51

新增:

  • 适配支持 Swoole 4.1.0 一键协程化

  • 新增进程池支持

  • 新增模型生成时,如目录不存在则自动创建

  • 新增ProcessManager::runWithManager方法,可以在IMI.SERVERS.CREATE.AFTER事件中使用

  • 新增Result->getSql()、Result->getStatement()方法

  • 新增Manager、Worker、Process进程初始化时重新播种随机数

  • 为CoroutineChannelManager::pop()方法增加$timeout参数

  • 新增自定义进程运行时初始化连接池等

  • 新增使用文件锁实现进程唯一实例限制

优化:

  • 优化ConnectContext和Group的Redis初始化判断逻辑

  • 热更新进程现在绑定到Manager进程下

  • 优化模型生成视图,默认第一个字段为主键

  • 同步池子兼容swoole 4.0.3及以上

  • 优化报错追踪准确性

  • 模型中对数据库bit类型字段处理为bool类型

  • 优化模型保存时null值判定逻辑

  • 调整WorkerStart处理

  • 调整枚举文件、类文件缓存目录方法

  • 优化模型更新数据时支持两种命名的字段

  • 优化模型更新时数据先转为数组

  • 调整优化BeanFactory实例化类时参数处理逻辑

  • 修改热更新进程启动文本

  • 调整:IMI.INITED事件中对项目类进行扫描,热重启仅对服务器类有效

  • 封装提取获取imi命令行方法

  • 优化Result->get()、Result->getArray()当数据不存在时返回null

  • 增加热更新进程启动提示

  • 提取封装Bean类缓存相关方法

修复:

  • 修复 Swoole <= 4.0.4 下可能会出现的热更新崩溃问题

  • 修复数据库连接配置问题,使用username指定用户名

  • 修复ManagerStop事件触发失败

  • 修复CoroutineChannelManager::stats()方法

  • 修复ConnectContext Redis存储读取问题

  • 修复模型生成器nullable为反值的bug

  • 修复命名空间未引入

  • 修复模型带where条件某些情况存在的问题

  • 修复kv存储类问题

  • 修复缓存初始化错误

  • 修复模型更新时带有不想关的字段

废除:

  • 移除日志自动保存机制,现在日志会实时传入处理器

  • 废除日志中lastTrace项
    增加支持{errorFile}、{errorLine}