Swoole 开发框架 imi v1.1.0 发布,重磅引入 Partial 概念

宇润-黑鬼sima
 宇润-黑鬼sima
发布于 2020年02月28日
收藏 7

疫情之下,程序员如何转型?共享数字化转型加速度,就在微软在线技术峰会>>>

imi 是基于 PHP Swoole 的高性能协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 服务的开发。

在 Swoole 的加持下,相比 php-fpm 请求响应能力,I/O密集型场景处理能力,有着本质上的提升。

imi 框架拥有丰富的功能组件,可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。

首创毫秒级的注解及代码热更新重启,让你在开发时只管一把梭,体验与 fpm 下开发并无二致,保存就刷新,立马看到效果。

与其他专注微服务领域的 Swoole 框架不同,imi 专注单体应用开发。原因很简单:大部分公司都不需要上微服务,单体应用足矣。

官方网站:https://www.imiphp.com/

码云:https://gitee.com/yurunsoft/IMI

Github:https://github.com/Yurunsoft/imi

imi 框架第一个版本 v0.0.1 首发于 2018 年 6 月 21 日

国际惯例

这两周依然远程办公,忙于各种项目。这周更新的 Partial 很强大实用,可以看下的。

免费视频教程

【宇润】基于 PHP + Swoole 的 imi 框架新手入门课程 | 每周五更新 | 从秃头到满头秀发,让你有更多时间上班划水,脱单不再是梦

戳我免费看从秃头到满头秀发的 imi 框架教程:https://www.bilibili.com/video/av78158909 (已更新到第九集《模型和ORM》)

更新日志

Partial

imi 的 Partial 思想是从 C# 中借鉴而来。Partial 可以将一个类的部分,分成几个文件,分别书写。

截止目前最新的 PHP 7.4 版本,还未在语言层面上支持 Partial 特性。

但依赖于 imi 强大的容器对象,终于在 PHP 中实现了 Partial 特性。

使用非常简单,使用 trait 编写,加上 @Partial 注解,可以方便地注入。

Partial 使用场景

  • 多人协作开发,修改同一个类文件难免有冲突。如果事先定义好接口,将不同方法分配给几个人开发,每个人只需要在自己的文件中编写,不用担心冲突问题。

  • 类的方法特别多,并且无法很好地拆分。这时候分到几个文件中,会相对比较好维护一些。

  • 有一些类是通过工具生成的,如果我们在类里编写了自己的代码,又需要重新工具生成一些内容,这时候会覆盖我们编写的代码。使用 Partial 在另一个文件开发,不会被覆盖掉。

在 Partial 概念引入 imi 框架前,imi 的模型生成工具将生成代码放在父类,用户在子类中编写代码。

增强

  • 新增 Partial 概念 (文档)

  • 树形模型新增支持注解设定主键字段 (文档)

优化

  • 优化 Redis 连接池资源类

  • 优化 Redis 连接池密码判断,现在为空字符串时,不会尝试密码登录

  • 优化树形模型代码

  • 优化热更新进程逻辑

修复

  • 修复 Inotify 热更新目录不存在报错问题

开始使用

创建 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

欢迎各路新人和大佬的加入贡献代码的行列中,修正错别字、错误拼写、提交代码,我们全都欢迎~

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Swoole 开发框架 imi v1.1.0 发布,重磅引入 Partial 概念
加载中

最新评论(11

lqianger
lqianger
有案例吗?
宇润-黑鬼sima
宇润-黑鬼sima
有用户在用哦,我们也开发了好几个项目了
lqianger
lqianger
发一个,看看
宇润-黑鬼sima
宇润-黑鬼sima
商业项目不能开源的哦
lqianger
lqianger
不要开源的,就是看看啥产品就行,比如QQ空间,我自己注册个登录上去看看就行。这样也算推广下产品。
p
phper08
不就是trait组合起来吗?
宇润-黑鬼sima
宇润-黑鬼sima
无侵入
江湖哥
江湖哥
给宇润点赞
狄工
狄工
swoole这异步通信框架主要应用场景在哪里
宇润-黑鬼sima
宇润-黑鬼sima
im、物联网、微服务等等
返回顶部
顶部