摘要:年開發(fā)并發(fā)布框架現(xiàn)已停止維護(hù)。經(jīng)過一年實(shí)戰(zhàn),年月日,一周年之際正式發(fā)布版本。宇潤部分開源項(xiàng)目我已通過碼云平臺,向項(xiàng)目力所能及地捐款,聊表心意。所以,目前主打的還是單體應(yīng)用開發(fā)。協(xié)議的開發(fā),也是帶來的一大優(yōu)勢。
imi 介紹
imi 是基于 PHP 協(xié)程應(yīng)用開發(fā)框架,它支持 HttpApi、WebSocket、TCP、UDP 應(yīng)用開發(fā)。
由 Swoole 提供強(qiáng)力驅(qū)動,Swoole 擁有常駐內(nèi)存、協(xié)程非阻塞 IO 等特性。
框架遵守 PSR 標(biāo)準(zhǔn)規(guī)范,提供 AOP、注解、連接池、請求上下文管理、ORM模型等常用組件。
imi 的模型支持關(guān)聯(lián)關(guān)系的定義,增刪改查一把梭!
作者介紹宇潤,江蘇無錫人,94年出生。初中自己接觸易語言,從此踏入代碼的世界。
2013 年開發(fā)并發(fā)布 YurunPHP 框架(現(xiàn)已停止維護(hù))。
2017 年開始正式玩 git 和發(fā)布開源項(xiàng)目,開源的東西都是自己能用到才會去做,不會為了造輪子而造,一切為了實(shí)用。
2018 年接觸 Swoole,打開了新世界的大門,原來 PHP 還能這么玩!
2018年4月16日,我為 imi 寫下了第一個(gè)字節(jié)的代碼。
2018年6月21日,發(fā)布了第一個(gè)公開版本 v0.0.1。
經(jīng)過一年實(shí)戰(zhàn),2019年6月21日,一周年之際正式發(fā)布 v1.0.0 版本。
宇潤部分開源項(xiàng)目:imi、YurunHttp、YurunOAuthLogin、PaySDK、ChineseUtil
我已通過碼云平臺,向 Swoole 項(xiàng)目力所能及地捐款 1111,聊表心意。
核心組件[x] Server (Http/Websocket/Tcp/Udp)
[x] 容器 (PSR-11)
[x] Aop 注入
[x] Http 中間件 (PSR-15)
[x] MySQL 連接池 (協(xié)程&同步,主從,負(fù)載均衡)
[x] Redis 連接池 (協(xié)程&同步,負(fù)載均衡)
[x] Db 連貫操作
[x] 關(guān)系型數(shù)據(jù)庫 模型
[x] 跨進(jìn)程共享內(nèi)存表 模型
[x] Redis 模型
[x] 日志 (PSR-3 / File + Console)
[x] 緩存 (PSR-16 / File + Redis)
[x] 驗(yàn)證器 (Valitation)
[x] Task 異步任務(wù)
[x] 進(jìn)程/進(jìn)程池
[x] 命令行開發(fā)輔助工具
[x] 業(yè)務(wù)代碼熱更新
擴(kuò)展組件imi-rpc
imi-hprose
imi-access-control
imi-rate-limit
imi-shared-memory
開始使用完全開發(fā)手冊
新項(xiàng)目 Demo
基于 imi 的項(xiàng)目SixMQ (宇潤)
慢點(diǎn)博客 (慢點(diǎn))
其它項(xiàng)目因工作原因不便透露,已知我所在公司、私單項(xiàng)目正在運(yùn)行 imi。
起源 & 設(shè)計(jì) & 未來 起源上面提到,我 2018 年接觸 Swoole,打開了新世界的大門,原來 PHP 還能這么玩!
我認(rèn)為的最好的學(xué)習(xí)方法,那就是去用,沒有實(shí)際的功能去實(shí)現(xiàn),學(xué)了也會容易忘,不算真正學(xué)會。之前我也有 YurunPHP 框架的開發(fā)經(jīng)驗(yàn),于是決定造個(gè)框架吧。
設(shè)計(jì)開發(fā) imi 之前,研究了好幾個(gè)當(dāng)時(shí)比較出名的框架,看到 Swoft 后,最終決定在 imi 框架大量使用注解。至于注解的優(yōu)缺點(diǎn),相比百度能比我說得更好,這里就不再復(fù)制粘貼一遍了。
目前大部分 Swoole 框架大都在強(qiáng)調(diào)微服務(wù),但 imi 的設(shè)計(jì)理念確是:
微服務(wù)可以有,但不是必須
我認(rèn)為絕大部分開發(fā)者的公司,用不著,或者根本沒有必要上微服務(wù)。微服務(wù)的開發(fā)、維護(hù)成本會比較大,沒有一定規(guī)模和業(yè)務(wù)量的,如果強(qiáng)行上微服務(wù)會本末倒置,給自己找麻煩。
imi 目前實(shí)現(xiàn)了最基礎(chǔ)的 imi-rpc 組件,以及支持了 hprose 協(xié)議。雖然還沒有更多深入的實(shí)現(xiàn),但這都說明了 imi 的設(shè)計(jì)理念,可以有,就看做不做。
所以,imi 目前主打的還是單體應(yīng)用開發(fā)。項(xiàng)目跑在 Swoole 下,可以比在 fpm 下性能更好,承載訪問量更大,尤其是在大量調(diào)用第三方接口的 I/O 密集型場景。
WebSocket、TCP、UDP 協(xié)議的開發(fā),也是 Swoole 帶來的一大優(yōu)勢。
當(dāng)然,Swoole 用來開發(fā)中間件也是相當(dāng)不錯(cuò)的,不能只把眼光放在 curd 上。
未來imi 未來也會逐步向微服務(wù)方面探索和發(fā)展,只不過現(xiàn)在更想做好眼前的單體應(yīng)用開發(fā)。
聯(lián)系我們Github 反饋:https://github.com/Yurunsoft/...
碼云倉庫:https://gitee.com/yurunsoft/IMI
Segmentfault 提問:https://segmentfault.com/
開源中國 問答:https://www.oschina.net/question
QQ群交流:17916227 。
歡迎真正喜歡代碼,而不是僅僅當(dāng)作是工作的朋友,加入 imi 開發(fā)組!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/31758.html
摘要:介紹是基于開發(fā)的協(xié)程開發(fā)框架,擁有常駐內(nèi)存協(xié)程異步非阻塞等優(yōu)點(diǎn)。宇潤我在年開發(fā)并發(fā)布了第一個(gè)框架,一直維護(hù)使用至今,非常穩(wěn)定,并且有文檔。于是我走上了開發(fā)的不歸路 showImg(https://segmentfault.com/img/bVbcxQH?w=340&h=160); 介紹 IMI 是基于 Swoole 開發(fā)的協(xié)程 PHP 開發(fā)框架,擁有常駐內(nèi)存、協(xié)程異步非阻塞IO等優(yōu)點(diǎn)。...
摘要:版本完成正式版前的除之外計(jì)劃功能,啟動凍結(jié)。百分之百單元測試覆蓋直面一劍封喉,基于實(shí)現(xiàn)框架常駐,依托生態(tài)實(shí)現(xiàn)業(yè)務(wù)常駐,此刻未來逐步漸進(jìn)。 QueryPHP v1.0.0-beta. 版本完成 1.0 正式版前的除 Swoole 之外計(jì)劃功能,啟動凍結(jié)。下一版本專注 Swoole 協(xié)程改進(jìn)。 關(guān)于 QueryPHP QueryPHP 是一款現(xiàn)代化的漸進(jìn)式高性能 PHP 7 不僅僅是常駐框...
摘要:分別為適配器模式,裝飾器模式,代理模式,外觀模式,橋接模式,組合模式,享元模式。設(shè)計(jì)模式五適配器模式適配器模式將某個(gè)對象的接生成器和協(xié)程的實(shí)現(xiàn)在這篇文章中,作者針對那些比較難以理解的概念,以一個(gè)更為通俗的方式去講明白。。 PHP 源碼注解 PHP 的詳細(xì)源碼注解 PHP 字符串操作整理 一些有關(guān)字符串的常用操作。 Redis 常見七種使用場景 (PHP 實(shí)戰(zhàn)) 這篇文章主要介紹利用 R...
閱讀 2962·2021-11-25 09:43
閱讀 3339·2021-11-24 09:39
閱讀 2849·2021-09-22 15:59
閱讀 2235·2021-09-13 10:24
閱讀 521·2019-08-29 17:02
閱讀 2113·2019-08-29 13:23
閱讀 3073·2019-08-29 13:06
閱讀 3554·2019-08-29 13:04