imi 框架 Logo

imi v2.0 长连接分布式 PHP 开发框架

多容器、分布式、高性能、次世代

它可以运行在 PHP-FPM、Swoole、Workerman 多种容器环境下。
现已被用于文旅电商平台、物联网充电云平台、停车云平台、支付微服务、短信微服务、钱包微服务、卡牌游戏服务端、数据迁移服务(虎扑)等项目中。

imi 于 2018 年立项并发布了第一个版本

PHP >= 7.4
Composer >= 2.0
Swoole >= 4.7.0
Redis、PDO

imi 入门视频教程(免费11集全)

imi 进阶教程——五子棋游戏开发(免费7集全)


QQ群了解一下?群号:17916227,或者戳这里👉宇润 PHP 组件全家桶 & S

快速创建 imi 项目

Http Server composer create-project imiphp/project-http:~2.0
WebSocket Server composer create-project imiphp/project-websocket:~2.0
TCP Server composer create-project imiphp/project-tcp:~2.0
UDP Server composer create-project imiphp/project-udp:~2.0
MQTT Server composer create-project imiphp/project-mqtt

imi 功能特点

常驻内存

基于 Swoole 和 Workerman,能够避免重复加载带来的性能损耗,提升性能

协程异步

Swoole 协程提高对数据库查询、接口请求等 I/O 密集型场景并发处理能力

毫秒级热更新重启

imi 拥有与传统 PHP 框架一样的开发效率,保存即看效果,开发体验与 fpm 无差别

imi 框架功能组件

什么是最好的 Swoole 框架啊?当然是 imi !

Http Server
Http2 Server
Websocket Server
Tcp Server
Udp Server
MQTT Server
容器 (PSR-11)
Aop 注入
Http 中间件 (PSR-15)
MySQL 连接池(主从+负均)
Redis 连接池(负载均衡)
Db 连贯操作
ORM 连贯操作
MemoryTable Model
验证器 (Validation)
日志 (PSR-3)
缓存 (PSR-16)
Redis 模型
Task 异步任务
进程/进程池
一把梭的分布式长连接解决方案
注解和代码的毫秒级热更新

成功案例

使用 imi 框架开发的部分项目展示 👆提交案例

腾悦物联

项目介绍:基于imi开发的高性能高并发分布式(千万级设备)的能源销售管理平台,提供多场景充电桩、售电柜、换电柜、智能电池等设备接入,开放API第三方应用五分钟即可完成新能源物联网售电设备接入

Adorecipe鸡尾酒资源库

项目介绍:本项目是基于imi 2.0的高性能 MVC 实战项目(一人完成开发),搭配 nginx 实现前端静态资源的访问及缓存,View 层很任性地采用了原生模板渲染。项目中大量使用了 imi 提供的缓存注解,优化数据查询的性能,点赞等场景使用了 imi 提供的锁机制保证并发场景下的数据一致性。强推大家使用 imi 开发此类项目!

看个蛋影视搜索 - 全网影视资源搜索平台

项目介绍:从最早的建站初心是为了自己方便!放到网络的以来,当流量越来越大的时候是要考虑升级配置还是重构项目,前几天 git 上看到 imiphp,索性就拿来实践一下,也是简单就重构出了所有页面,模版引擎引入了 TP 的 think-template,整个重构也就一天不到,所以 imiphp 确实很容易上手!加油!

虎扑 - 上亿数据迁移服务

项目介绍:随着数据规模的越来越大,mysql已经不能适用大数据多维度的查询,需要用ES等一类的搜索引擎,进行多维度的分词查询,MYSQL现阶段使用按天分表存储,不能满足跨天的长时间查询。

如何以最快的速度完成数据迁移,将数据库中的数据迁移到ES中,是需要评估的一个重要技术点。

在高IO密集的场景下,单次请求需要80毫秒,imi运用Swoole协程,不断在用户态和内核态之间进行切换,充分利用计算机CPU,从而能快速完成海量数据迁移。

根据普罗米修斯的监控统计,在 两台 2C 4G的机器上,imi以每秒钟同步1000~1500条的同步速度,完成了上亿级别的数据迁移。

博文地址:https://blog.csdn.net/qq_32783703/article/details/113576741

为开源贡献

imi 遵循 木兰宽松许可证(Mulan PSL v1) 开源协议发布,并提供免费使用

我要捐赠 加入开发

捐赠列表

感谢各位对我的帮助,我会再接再厉
金额 捐赠者 留言 渠道
300.00 张磊 支付宝
200 牛顿呀 imiphp 是永远的神 微信
188.88 独特工具箱 支持开源,支持imiphp 微信
105.21 EasySwoole 贡献者——仙士可 微信
100.00 *能 支付宝
100.00 Tius 支持imi,支持宇润开源作品 微信
99.99 *宇 希望开源产品长长久久 微信
66.66 会的不多 宇润的PaySDK用的很6,感谢啊! 支付宝
66.66 *生 微信
20.00 yangyj QQ
19.90 *瑶 微信
16.66 慢点 (该博客使用 imi 开发) 微信
16.66 北*Q 微信
12.16 *森 支持开源项目/精神 微信
11.00 *健 大佬辛苦了 微信
10.00 *志伟 OneTake支持yurun开源 支付宝
10.00 封尘 支付宝
10.00 摄像头 支付宝
10.00 五十岚 感谢开源精神,感谢付出。 微信
10.00 J*U 支持开源,群主加油 微信
10.00 落幕 给imi加个鸡腿 微信
8.88 *愁 微信
6.66 Eleven 微信
6.66 J*w 微信
6.66 *兰胤 imi加油 支付宝
6.00 daxia 支付宝
3.88 努*n 微信
3.00 aLuckyfellow 支持 yurun开源 支付宝
1.00 *锐 我是swoole5群的似是而非,支持一下 支付宝
0.88 小公主 希望老哥多写点demo 微信
0.1 *文文 支付宝
0.01 *林 支付宝

想要加入我们吗?开源项目不能只靠一两个人,而是要靠大家的努力来完善~

我们需要你的加入,你可以做的事(包括但不限于以下):