imi v1.0 正式版,专注单体应用的 PHP 协程应用开发框架

栏目: PHP · 发布时间: 5年前

内容简介:imi 是基于 PHP 协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 应用开发。由 Swoole 提供强力驱动,Swoole 拥有常驻内存、协程非阻塞 IO 等特性。

imi 介绍

imi v1.0 正式版,专注单体应用的  <a href='https://www.codercto.com/topics/18749.html'>PHP</a>  协程应用开发框架

imi 是基于 PHP 协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 应用开发。

由 Swoole 提供强力驱动,Swoole 拥有常驻内存、协程非阻塞 IO 等特性。

框架遵守 PSR 标准规范,提供 AOP、注解、连接池、请求上下文管理、ORM模型等常用组件。

imi 的模型支持关联关系的定义,增删改查一把梭!

作者介绍

宇润,江苏无锡人,94年出生。初中自己接触易语言,从此踏入代码的世界。

2013 年开发并发布 YurunPHP 框架(现已停止维护)。

2017 年开始正式玩 git 和发布开源项目,开源的东西都是自己能用到才会去做,不会为了造轮子而造,一切为了实用。

2018 年接触 Swoole,打开了新世界的大门,原来 PHP 还能这么玩!

2018年4月16日,我为 imi 写下了第一个字节的代码。

2018年6月21日,发布了第一个公开版本 v0.0.1。

经过一年实战,2019年6月21日,一周年之际正式发布 v1.0.0 版本。

宇润部分开源项目: imiYurunHttpYurunOAuthLoginPaySDKChineseUtil

核心组件

  • [x] Server (Http/Websocket/Tcp/Udp)
  • [x] 容器 (PSR-11)
  • [x] Aop 注入
  • [x] Http 中间件 (PSR-15)
  • [x] MySQL 连接池 (协程&同步,主从,负载均衡)
  • [x] Redis 连接池 (协程&同步,负载均衡)
  • [x] Db 连贯操作
  • [x] 关系型数据库 模型
  • [x] 跨进程共享内存表 模型
  • [x] Redis 模型
  • [x] 日志 (PSR-3 / File + Console)
  • [x] 缓存 (PSR-16 / File + Redis)
  • [x] 验证器 (Valitation)
  • [x] Task 异步任务
  • [x] 进程/进程池
  • [x] 命令行开发辅助工具
  • [x] 业务代码热更新

扩展组件

imi-rpc

imi-hprose

imi-access-control

imi-rate-limit

imi-shared-memory

开始使用

完全开发手册

新项目 Demo

基于 imi 的项目

SixMQ (宇润)

慢点博客 (慢点)

其它项目因工作原因不便透露,已知我所在公司、私单项目正在运行 imi。

起源 & 设计 & 未来

起源

上面提到,我 2018 年接触 Swoole,打开了新世界的大门,原来 PHP 还能这么玩!

我认为的最好的学习方法,那就是去用,没有实际的功能去实现,学了也会容易忘,不算真正学会。之前我也有 YurunPHP 框架的开发经验,于是决定造个框架吧。

设计

开发 imi 之前,研究了好几个当时比较出名的框架,看到 Swoft 后,最终决定在 imi 框架大量使用注解。至于注解的优缺点,相比百度能比我说得更好,这里就不再复制粘贴一遍了。

目前大部分 Swoole 框架大都在强调微服务,但 imi 的设计理念确是:

微服务可以有,但不是必须

我认为绝大部分开发者的公司,用不着,或者根本没有必要上微服务。微服务的开发、维护成本会比较大,没有一定规模和业务量的,如果强行上微服务会本末倒置,给自己找麻烦。

imi 目前实现了最基础的 imi-rpc 组件,以及支持了 hprose 协议。虽然还没有更多深入的实现,但这都说明了 imi 的设计理念,可以有,就看做不做。

所以,imi 目前主打的还是单体应用开发。项目跑在 Swoole 下,可以比在 fpm 下性能更好,承载访问量更大,尤其是在大量调用第三方接口的 I/O 密集型场景。

WebSocket、TCP、UDP 协议的开发,也是 Swoole 带来的一大优势。

当然,Swoole 用来开发中间件也是相当不错的,不能只把眼光放在 curd 上。

未来

imi 未来也会逐步向微服务方面探索和发展,只不过现在更想做好眼前的单体应用开发。

联系我们

Github 反馈: https://github.com/Yurunsoft/...

Segmentfault 提问: https://segmentfault.com/

开源中国 问答: https://www.oschina.net/question

QQ群交流:17916227 imi v1.0 正式版,专注单体应用的 PHP 协程应用开发框架

欢迎真正喜欢代码,而不是仅仅当作是工作的朋友,加入 imi 开发组!


以上所述就是小编给大家介绍的《imi v1.0 正式版,专注单体应用的 PHP 协程应用开发框架》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

后谷歌时代:大数据的衰落及区块链经济的崛起

后谷歌时代:大数据的衰落及区块链经济的崛起

乔治·吉尔德 / 现代出版社 / 2018-9-5 / 68

以大数据和机器智能为基础的谷歌时代(信息互联网时代)是一个令人敬畏的时代。但它即将终结。 《后谷歌时代》一书的作者乔治•吉尔德是一位颇具远见卓识的智者。他在技术和文化领域具有无与伦比的视野和见地。他向读者描述了谷歌所面临信任与安全危机,并勇敢地预测了即将到来的后谷歌时代。 谷歌用其惊人的“搜索和排序”能力吸引了整个世界。功能强大的搜索引擎,看似免费小应用,诸如视频、地图、电子邮箱等,让......一起来看看 《后谷歌时代:大数据的衰落及区块链经济的崛起》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具