IMI 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
IMI 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
IMI 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
IMI 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
IMI 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

介绍

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

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

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

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

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

核心组件

  • HttpApi、WebSocket、TCP、UDP 服务器
  • MySQL 连接池 (主从+负载均衡)
  • Redis 连接池 (主从+负载均衡)
  • 超好用的 ORM (Db、Redis、Tree)
  • 毫秒级热更新
  • AOP
  • Bean 容器
  • 缓存 (Cache)
  • 配置读写 (Config)
  • 枚举 (Enum)
  • 事件 (Event)
  • 门面 (Facade)
  • 验证器 (Validate)
  • 锁 (Lock)
  • 日志 (Log)
  • 异步任务 (Task)

扩展组件

开始使用

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

完全开发手册

运行环境

  • Linux 系统 (Swoole 不支持在 Windows 上运行)
  • PHP >= 7.1
  • Composer
  • Swoole >= 4.3.0
  • Redis、PDO 扩展

版权信息

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

鸣谢

感谢以下开源项目 (按字母顺序排列) 为 imi 提供强力支持!

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (6)

加载中
打分: 力荐
优秀!
03/19 19:07
回复
举报
文档写的让人难以入手啊。知识点过于零散。
2020/11/05 14:37
回复
举报
swoole没打包进去么,先装swoole再装imi么?
2020/01/11 22:53
回复
举报
Swoole是php扩展,需要自行安装,或者使用Swoole官方docker
2020/01/12 07:28
回复
举报
支持一下
2019/11/16 11:53
回复
举报
支持一下
2019/01/08 13:34
回复
举报
更多评论
03/19 16:30

IMI v1.2.22 已经发布,基于 Swoole 的协程 PHP 开发框架

IMI v1.2.22 已经发布,基于 Swoole 的协程 PHP 开发框架 此版本更新内容包括: 随便说说 最近 PHP 界热闹了起来,也多出了很多瓜可以吃,有点意思~ 目前 imi v2 版本开发进度顺利,如果有任何问题,欢迎联系我们! imi v2 版本最新规划及动态: https://github.com/Yurunsoft/imi/issues/66 更新日志 增强 新增支持配置 JsonObjectParser、JsonArrayParser 序列化时的参数 新增 JsonEncode 注解,支持设定 JSON 类型字段序列化时...

3
1
发表了资讯
03/12 17:14

IMI v1.2.21 已经发布,基于 Swoole 的协程 PHP 开发框架

IMI v1.2.21 已经发布,这是一个基于 Swoole 的协程 PHP 开发框架。 此版本更新内容包括: 随便说说 目前 imi v2 版本开发进度顺利,如果有任何问题,欢迎联系我们! imi v2 版本最新规划及动态: https://github.com/Yurunsoft/imi/issues/66 imi 正式成为了码云 GVP 项目,大家也可以到码云关注下哦!(https://gitee.com/yurunsoft/IMI) 更新日志 增强 Http 路由支持 ./ 用法 Server 工具类新增:sendByFlag、sendRawByFlag...

1
2
发表了资讯
02/08 11:05

IMI v1.2.20 已经发布,基于 Swoole 的协程 PHP 开发框架

IMI v1.2.20 已经发布,这是一个基于 Swoole 的协程 PHP 开发框架。 此版本更新内容包括: 随便说说 目前 imi v2 版本开发进度顺利,如果有任何问题,欢迎联系我们! imi v2 版本最新规划及动态: https://github.com/Yurunsoft/imi/issues/66 imi 正式成为了码云 GVP 项目,大家也可以到码云关注下哦!(https://gitee.com/yurunsoft/IMI) 目前已经进入无心撸码,只想放假的状态~ 祝大家 2021 春节快乐~ 更新日志 优化 优化处理...

0
0
01/29 08:49

IMI v1.2.19 已经发布,基于 Swoole 的协程 PHP 开发框架

IMI v1.2.19 已经发布,这是一个基于 Swoole 的协程 PHP 开发框架。 随便说说 目前 imi v2 版本开发进度顺利,如果有任何问题,欢迎联系我们! imi v2 版本最新规划及动态: https://github.com/Yurunsoft/imi/issues/66 imi 正式成为了码云 GVP 项目,大家也可以到码云关注下哦!(https://gitee.com/yurunsoft/IMI) 更新日志 增强 新增 SQL 监听功能 新增 JsonNotNull 注解 优化 优化模型中的 find、update、delete 操作 优化...

1
2
发表了资讯
2020/12/25 10:05

IMI v1.2.18 已经发布,基于 Swoole 的协程 PHP 开发框架

IMI v1.2.18 已经发布,这是一个基于 Swoole 的协程 PHP 开发框架。 随便说说 目前 imi v2 版本已经开始开发了(2020-09)如果有任何问题,欢迎联系我们! imi v2 版本最新规划及动态: https://github.com/Yurunsoft/imi/issues/66 imi 正式成为了码云 GVP 项目,大家也可以到码云关注下哦!(https://gitee.com/yurunsoft/IMI) 更新日志 增强 路由注解新增 paramsBody 参数,支持从 JSON、XML 中决定路由 路由注解新增 params...

1
4
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
02/05 12:40

imi在虎扑上亿数据迁移实践

1.项目背景: 随着数据规模的越来越大,mysql已经不能适用大数据多维度的查询,需要用ES等一类的搜索引擎,进行多维度的分词查询,MYSQL现阶段使用按天分表存储,不能满足跨天的长时间查询。如何以最快的速度完成数据迁移,将数据库中的数据迁移到ES中,是需要评估的一个重要技术点 2.根本问题: mysql适合做数据落地,在大量业务数据存储的情况下,like查询效率低,不适合多维度查询 3.使用imi作为数据迁移的微服务Server 首先...

0
0
发表了博客
2019/07/23 14:42

【 2018南京 】Magic Potion (网络流)

There are nnn heroes and mmm monsters living in an island. The monsters became very vicious these days, so the heroes decided to diminish the monsters in the island. However, the iii-th hero can only kill one monster belonging to the set MiM_iMi. Joe, the strategist, has kkk bottles of magic potion, each of which can buff one hero's power and let him be able to kill one more monster. Since the ...

0
0
发表了博客
2016/03/14 13:56

U-boot中增加ping命令

在配置文件 include/configs/at91rm9200dk.h的宏CONFIG_COMMANDS中增加CFG_CMD_PING,如下: #define CONFIG_COMMANDS \ ((CONFIG_CMD_DFL | CFG_CMD_MII |\ CFG_CMD_DHCP | CFG_CMD_PING ) & \ ~(CFG_CMD_BDI | \ CFG_CMD_IMI | \ CFG_CMD_AUTOSCRIPT | \ CFG_CMD_FPGA | \ CFG_CMD_MISC | \ CFG_CMD_LOADS ))...

0
0
发表了博客
2020/03/07 09:07

第一行代码ActivityTest学习笔记

代码库为 FirstActivity (因为看书不仔细,项目名称搞错了...) 对于初学者来说,如果在创建的时候没有完全按照教程,而是使用了Empty Activity,而又希望和教程保持一致。是可以将Main Activity通过Refactor操作改为First Activity的。 如果想修改项目名称,直接修改目录名,然后将根目录下的.imi改名。重新打开即可。 在IntelliJ Idea中,Refactor操作的快捷键是Shift + F6 在IntelliJ Idea中,自动调整代码格式(Reformat Cod...

0
0
2020/12/23 11:29

chemo-standardizer-提供一种简单的分子标准化方法,作为分子建模练习的前奏。-Francis Atkinson

chemo-standardizer-提供一种简单的分子标准化方法,作为分子建模练习的前奏。-Francis Atkinson 发布:2020-12-23 11:29:35.710895 作者:Francis Atkinson ### 作者邮箱:francis@ebi.ac.uk ### 首页:https://www.ebi.ac.uk/chembldb/index.php/ws ### 文档:None ### 下载链接 # standardiser This is a tool designed to provide a simple way of standardising molecules as a prelude to e.g. molecular modelling exer...

0
0
2020/11/21 14:18

基于内容的图像检索技术:从特征到检索

点击上方“机器学习与生成对抗网络”,"星标置顶” 重磅干货,第一时间送达 来自 | 知乎 作者 | 赵丽丽 编辑 | 新机器视觉 在介绍视觉内容检索流程前,先来回顾下文本检索流程。 一、相似文本检索 相似文本检索可以分成构建词库、构建索引和检索三部分,如下图所示。 构建词库是离线操作,主要对目标数据集中的文本进行解析提取词干信息,建立当前数据集的词库,然后基于词库,对数据集中所有文档提取本文特征。构建词库在整个检...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了问答
2018/12/14 15:57

【一周热点】Linux.org 被黑,留下华为警告 | Edge 的卡不仅仅是形而上学的

回顾一周社区热门资讯与你的精彩留言~ 第【六】期:1208-12014 读者神回复 from: Linux.org 被黑,攻击者留下“菊花”警告 --- from: 滴滴开源小程序框架 Mpx ,致力于提高小程序开发体验 --- from: Windows Insider 最新重大升级,升级记事本应用 --- from: imi v0.2.2 发布,1秒增量热更新 + 60余项改进 --- from: Edge 开发团队透露更多细节:兼容 Chrome 扩展 --- from: Jedis 2.9.1、2.10.0 与 3.0.0 发布,Redis 的 Java...

9
3
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
6 评论
196 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部