当前位置: 首页 > 后端技术 > PHP

IMI基于Swoole的协程PHP开发框架常驻内存,协程异步非阻塞

时间:2023-03-29 16:14:24 PHP

简介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/IMIGithub:https://github。com/Yurunsoft/IMI空项目:https://gitee.com/yurunsoft/e...功能演示:https://gitee.com/yurunsoft/i...框架目标及前期规划,规划主要改进HTTP服务开发,优先执行:常驻内存,避免重复加载带来的性能损失,提升海量性能;协程异步,提升I/O密集型场景(如:微信开发、支付、登录等)的并发处理能力。HTTP服务开发完成后,下一步将添加TCP、UDP、WebSocket开发支持,最后考虑分布式和微服务的解决方案。功能组件[x]Aop(注释/配置文件)[x]容器(PSR-11)[x]注释[x]全局事件/类事件[x]HttpServer[x]HttpRequest/HttpResponse(PSR-7)[x]Http中间件、注解路由、配置文件路由(PSR-15)[x]Session(File+Redis)[x]View(html+json+xml)[x]log(PSR-3/File+Console)[x]缓存(PSR-16/文件+Redis)[x]Redis连接池[x]协程MySQL连接池[x]PDO连接池[]协程PostgreSQL连接池[x]Db持续运行[x]关系数据库模型ORM[x]跨进程共享内存表模型ORM[x]任务异步任务[x]命令行开发辅助[]图形化管理工具[]项目热更新[]RPC远程调用[]WebSocket服务器相关...[]TCP服务器相关...日志和缓存支持:多驱动+多实例+统一操作入口所有连接池支持:同步+异步+多驱动+多实例文档完整的开发手册alQQ群:74401592,有问题请联系我们,有人解答并修复。运行环境PHP>=7.0ComposerSwoole>=2.2.0(协程必须开启,如果使用Redis,请开启)Hiredis(安装Swoole前需要安装)版权信息IMI在Apache2开源协议下发布,免费使用。致谢感谢以下开源项目(按字母顺序排列)对IMI的支持!doctrine/annotations(PHP注解处理类库)PHP(没有PHP,没有IMI)swoft/swoole-ide-helper(为IDE提供代码提示)Swoole(没有Swoole,没有IMI)项目起源一个偶然的机会,接触到了说到Swoole2.x版本,经过简单的了解和demo调试,我觉得Swoole可能是未来PHP微服务架构开发不可或缺的扩展。众所周知,PHP是被其他语言看不起的宇宙第一编程语言。PHP只是一种脚本语言,只是一个模板引擎,没有强类型规范开发,维护起来很不方便。随着PHP7的到来,增加了对强类型的支持,增强了PHP的可维护性和性能。IMI底层使用了很多强类型进行开发和规范。雨润本人在2013年开发并发布了第一个框架YurunPHP,一直维护使用至今。它非常稳定并且有文档。我工作过的公司就用过这个框架。还是很幸运有机会在实战中不断完善和完善框架。PHP进入了Swoole时代。本着学习Swoole,尝试基于Swoole开发框架的想法,接触到了EasySwoole和Swoft。我喜欢听到的是,我首先参考了这两个框架的文档和用法,然后简单地看了下源码。我决定先从Swoole入手。实战是锻炼人的最好方法。于是我走上了IMI发展的不归路……