内容简介:介绍 IMI 是基于 Swoole 开发的协程 PHP 开发框架,拥有常驻内存、协程异步非阻塞IO等优点。 IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手。 IMI 框架底层开发使用了强类型,易维护,...
介绍
IMI 是基于 Swoole 开发的协程 PHP 开发框架,拥有常驻内存、协程异步非阻塞IO等优点。
IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手。
IMI 框架底层开发使用了强类型,易维护,性能更强。支持 Aop ,支持使用注解和配置文件注入,完全遵守 PSR-3、4、7、11、15、16 标准规范。
框架的扩展性强,开发者可以根据实际需求,自行开发相关驱动进行扩展。不止于框架本身提供的功能和组件!
我们认为一个框架不仅需要代码健壮、简单易用,文档也是十分重要,所以文档的完善是我们工作的重点,相信一个好的文档能够让你事半功倍!
欢迎有志之士加入我们,一起开发完善!技术好的贡献代码,文笔好的贡献文档,有好的想法也欢迎与我们交流!
框架暂未实战验证,请无能力阅读和修改源代码的开发者,暂时不要用于实际项目开发,等待我们的实战检验完善,我们不希望因此为您造成不便!
官网:https://www.imiphp.com/
文档手册:https://doc.imiphp.com/
代码仓库:
码云:https://gitee.com/yurunsoft/IMI
Github:https://github.com/Yurunsoft/IMI
空项目:https://gitee.com/yurunsoft/empty-imi-demo
功能Demo:https://gitee.com/yurunsoft/imi-demo
目前框架还未成熟,暂只支持php7.0+swoole2.2,未来将支持php7.1以上+swoole4.0!
框架目标及计划
前期,计划主要完善 HTTP 服务开发,优先实现:常驻内存,避免重复加载带来的性能损耗,提升海量性能;协程异步,提高对 I/O 密集型场景并发处理能力(如:微信开发、支付、登录等)。
待 HTTP 服务开发完善后,然后下一步会增加 TCP、UDP、WebSocket 开发支持,最后才是考虑分布式、微服务的解决方案。
功能组件
Aop (注解 / 配置文件)
Container (PSR-11)
注解
全局事件/类事件
HttpServer
HttpRequest/HttpResponse (PSR-7)
Http 中间件、注解路由、配置文件路由 (PSR-15)
Session (File + Redis)
View (html + json + xml)
日志 (PSR-3 / File + Console)
缓存 (PSR-16 / File + Redis)
Redis 连接池
协程 MySQL 连接池
PDO 连接池
协程 PostgreSQL 连接池
Db 连贯操作
关系型数据库 模型 ORM
跨进程共享内存表 模型 ORM
Task 异步任务
命令行开发辅助工具
图形化管理工具
项目热更新
RPC 远程调用
WebSocket 服务器相关……
TCP 服务器相关……
日志、缓存都支持:多驱动 + 多实例 + 统一操作入口
所有连接池都支持:同步 + 异步 + 多驱动 + 多实例
文档
运行环境
版权信息
IMI 遵循 Apache2 开源协议发布,并提供免费使用。
鸣谢
感谢以下开源项目 (按字母顺序排列) 为 IMI 提供强力支持!
doctrine/annotations (PHP 注解处理类库)
PHP (没有 PHP 就没有 IMI)
swoft/swoole-ide-helper (为 IDE 提供代码提示)
Swoole (没有 Swoole 就没有 IMI)
项目起源
在机缘巧合下,我偶然接触到了 Swoole 2.x 版本,在简单了解和demo调试后我认为,Swoole 可能是未来 PHP 微服务架构开发必不可少的扩展。
众所周知,PHP 是被其它语言看不起的宇宙第一编程语言,PHP 仅仅是一个脚本语言,仅仅是一个模版引擎,没有强类型规范开发,维护非常不便。
PHP 7 来了,强类型的支持加入,增强了 PHP 的可维护性并提升了性能,IMI 底层就使用了非常多的强类型进行开发和规范。
宇润我在 2013 年开发并发布了第一个框架 YurunPHP,一直维护使用至今,非常稳定,并且有文档。
我待过的公司有用过这个框架,我还是很幸运的,有机会在实战中不断改进完善框架。
PHP 进入 Swoole 时代,我本着学习 Swoole 并且尝试能否开发一个基于 Swoole 的框架的想法,接触了解到了 EasySwoole 和 Swoft。
喜闻乐见的是,我先参考了一下这两个框架的文档和用法,再简单看了一下源代码。我决定还是先从 Swoole 看起,实战是最可以锻炼人的。于是我走上了 IMI 开发的不归路……
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- ABP开发框架前后端开发系列---(2)框架的初步介绍
- ABP开发框架前后端开发系列---(14)基于Winform的ABP快速开发框架
- ABP开发框架前后端开发系列---(8)ABP框架之Winform界面的开发过程
- 如何基于Winform开发框架或混合框架基础上进行项目的快速开发
- ABP开发框架前后端开发系列---(9)ABP框架的权限控制管理
- 用大型开发框架开发小程序那点事儿
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Release It!
Michael T. Nygard / Pragmatic Bookshelf / 2007-03-30 / USD 34.95
“Feature complete” is not the same as “production ready.” Whether it’s in Java, .NET, or Ruby on Rails, getting your application ready to ship is only half the battle. Did you design your system to......一起来看看 《Release It!》 这本书的介绍吧!