imi est un framework de développement PHP qui prend en charge les microservices distribués à connexion longue. Il peut s'exécuter dans une variété d'environnements de conteneurs tels que PHP-FPM
, Swoole
, Workerman
et RoadRunner
.
imi fournit une multitude de fonctions de base : MySQL
, PostgreSQL
, Redis
,超强超好用的自研ORM
,连接池
, Web Api
, Web MVC
, WebSocket
, TCP Server
, UDP Server
, HTTP2
, MQTT
, gRPC
,容器化(Container)
,依赖注入
, Aop
,事件
,异步(Async)
,缓存(Cache)
,命令行(Command)
,配置化(Config)
,上下文(Context)
,定时任务(Cron)
,门面(Facade)
,验证器(Validate)
,锁(Lock)
,日志(Log)
,定时器(Timer)
,权限控制
,消息队列(RabbitMQ、Kafka、Redis)
, Swagger
,宏(Macro)
,限流
,共享内存
, Smarty
,雪花算法发号器(Snowflake)
, Workerman Gateway
, InfluxDB
et TDengine
et d'autres composants.
Dans le même temps, imi fournit également un support lié aux microservices : Nacos 配置中心
, etcd 配置中心
, Nacos 服务注册
, Nacos 服务发现
, Swoole Tracker
, Zipkin
, Jaeger
, Prometheus
, InfluxDB 服务指标监控
, TDengine 服务指标监控
et负载均衡
et d'autres composants.
De plus, imi fournit également le squelette de développement backend de gestion imi-admin.
Depuis sa première version le 21 juin 2018, le cadre imi a fonctionné de manière stable dans de nombreux projets, tels que la plateforme de commerce électronique de tourisme culturel, la plateforme cloud de chargement IoT, la plateforme cloud de stationnement, les microservices de paiement, les microservices SMS, les microservices de portefeuille, des projets tels que en tant que serveur de jeux de cartes et service de migration de données (Hupu).
imi fournit officiellement un assistant IA imi-ai, qui peut vous aider à résoudre des problèmes, qu'il s'agisse du travail, de la vie ou des études.
Pour ceux qui ont parrainé sur le site officiel d'imi, veuillez contacter Yurun avec le bon de paiement pour recevoir le numéro de carte d'activation équivalent !
Toute personne ayant soumis un PR sur imi Github/Gitee peut contacter Yurun avec la capture d'écran pour recevoir un certain nombre de numéros de carte d'activation !
Il est actuellement géré uniquement pour le bien public et l'inscription vous donnera droit à un certain quota gratuit.
Puisqu'il y a un coût pour appeler l'interface OpenAI, si le quota est épuisé, tout le monde est invité à soutenir la cause open source. Le prix est le même que celui de l'OpenAI officiel, 1 RMB = 72 000 jetons.
Tutoriel vidéo de base imi 2.0 (série gratuite en cours) :
https://space.bilibili.com/768718/channel/seriesdetail?sid=274078 https://www.zhihu.com/people/yurunsoft/zvideos
Tutoriel d'introduction au framework imi 1.0 (11 épisodes gratuits) https://www.bilibili.com/video/av78158909
Tutoriel avancé imi framework - développement de jeux de backgammon (7 épisodes gratuits) https://space.bilibili.com/768718/channel/detail?cid=136926
Contrôle des autorisations (phpben/imi-auth)
Centre d'inscription (phpben/imi-config-center)
Routage modulaire (phpben/imi-module-route)
Validateur ThinkPHP6 (phpben/imi-validate)
Cadre de gestion backend (phpben/imi-admin)
Créer un projet de serveur HTTP : composer create-project imiphp/project-http:~3.0.0
Créez un projet WebSocket Server : composer create-project imiphp/project-websocket:~3.0.0
Créez un projet serveur TCP : composer create-project imiphp/project-tcp:~3.0.0
Créer un projet de serveur UDP : composer create-project imiphp/project-udp:~3.0.0
Créez un projet gRPC : composer create-project imiphp/project-grpc:~3.0.0
Créez un projet serveur MQTT : composer create-project imiphp/project-mqtt:~3.0.0
Manuel de développement complet
Système Linux (Swoole ne prend pas en charge l'exécution sous Windows)
PHP >= 8.1
Compositeur >= 2.0
Swoole >= 5,0
Redis, extension PDO
Il est recommandé d'utiliser le Docker officiel de Swoole : https://github.com/swoole/docker-swoole
Que vous développiez avec imi dans le cadre d'un projet personnel ou d'entreprise, qu'il s'agisse d'un projet open source ou commercial, vous pouvez nous soumettre votre cas.
Nous examinerons le cas que vous avez soumis et pourrons l'afficher sur le site officiel d'imi, le site officiel de Swoole, etc., ce qui aidera à promouvoir et à développer votre projet.
Format de soumission :
Nom du projet
Présentation du projet
Adresse du projet (site officiel/adresse de téléchargement/Github, etc. au moins un élément)
Coordonnées (téléphone/e-mail/QQ/WeChat, etc. au moins une)
Captures d'écran du projet (facultatif)
Remarques
Cas de réussite : https://www.imiphp.com/case.html
imi se développera mieux avec vos cas. Les utilisateurs qualifiés sont invités à publier des cas de projet, ce qui est aussi une sorte de publicité gratuite !
imi est publié sous la licence open source Mulan PSL v2 et son utilisation est gratuite.
Merci aux projets open source suivants (par ordre alphabétique) pour avoir fourni un solide support à imi !
doctrine/annotations (bibliothèque de traitement d'annotations PHP)
PHP (Sans PHP, il n'y aurait pas d'imi)
Swoole (Sans Swoole, il n'y aurait pas d'imi)
Voulez-vous être répertorié comme contributeur?
Choses que vous pouvez faire (y compris, mais sans s'y limiter, les éléments suivants) :
Corriger l'orthographe et les fautes de frappe
Améliorer les commentaires
correction d'un bug
Développement de fonctionnalités
Documentation
Tutoriels, partage de blog
Soumettez Pull Request
à ce référentiel et vous pourrez devenir contributeur à imi !
Pour plus de détails sur la participation au didacticiel de développement du framework : https://doc.imiphp.com/v3.0/adv/devp.html