imi es un marco de desarrollo PHP que admite microservicios distribuidos de conexión larga. Puede ejecutarse en una variedad de entornos de contenedores como PHP-FPM
, Swoole
, Workerman
y RoadRunner
.
imi proporciona una gran cantidad de funciones básicas: 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
y TDengine
y otros componentes.
Al mismo tiempo, imi también proporciona soporte relacionado con microservicios: Nacos 配置中心
, etcd 配置中心
, Nacos 服务注册
, Nacos 服务发现
, Swoole Tracker
, Zipkin
, Jaeger
, Prometheus
, InfluxDB 服务指标监控
, TDengine 服务指标监控
y负载均衡
y otros componentes.
Además, imi también proporciona el esqueleto de gestión de desarrollo backend imi-admin.
Desde su primer lanzamiento el 21 de junio de 2018, el marco imi se ha estado ejecutando de manera estable en muchos proyectos, como la plataforma de comercio electrónico de turismo cultural, la plataforma de carga en la nube de IoT, la plataforma de estacionamiento en la nube, los microservicios de pago, los microservicios de SMS, los microservicios de billetera, proyectos como como servidor de juegos de cartas y servicio de migración de datos (Hupu).
imi proporciona oficialmente un asistente de inteligencia artificial, imi-ai, que puede ayudarlo a resolver problemas, ya sea en el trabajo, la vida o el estudio.
Para aquellos que han patrocinado en el sitio web oficial de imi, comuníquese con Yurun para recibir el número de tarjeta de activación equivalente con el comprobante de registro de pago.
Cualquiera que haya enviado un PR en imi Github/Gitee puede comunicarse con Yurun con la captura de pantalla para recibir una cierta cantidad de número de tarjeta de activación.
Actualmente funciona exclusivamente para el bienestar público y el registro le otorgará una determinada cuota gratuita.
Dado que llamar a la interfaz OpenAI tiene un costo, si la cuota se agota, todos pueden apoyar la causa del código abierto. El precio es el mismo que el de OpenAI oficial, 1RMB = 72,000 tokens.
Vídeo tutorial básico de imi 2.0 (serie gratuita en curso):
https://space.bilibili.com/768718/channel/seriesdetail?sid=274078 https://www.zhihu.com/people/yurunsoft/zvideos
Tutorial introductorio del marco imi 1.0 (11 episodios gratuitos) https://www.bilibili.com/video/av78158909
Tutorial avanzado de imi framework: desarrollo de juegos de backgammon (7 episodios gratuitos) https://space.bilibili.com/768718/channel/detail?cid=136926
Control de permisos (phpben/imi-auth)
Centro de registro (phpben/imi-config-center)
Enrutamiento modular (phpben/imi-module-route)
Validador ThinkPHP6 (phpben/imi-validate)
Marco de gestión de backend (phpben/imi-admin)
Crear proyecto de servidor Http: composer create-project imiphp/project-http:~3.0.0
Cree un proyecto de WebSocket Server: composer create-project imiphp/project-websocket:~3.0.0
Cree un proyecto de servidor TCP: composer create-project imiphp/project-tcp:~3.0.0
Crear proyecto de servidor UDP: composer create-project imiphp/project-udp:~3.0.0
Crear un proyecto gRPC: composer create-project imiphp/project-grpc:~3.0.0
Cree un proyecto de servidor MQTT: composer create-project imiphp/project-mqtt:~3.0.0
manual de desarrollo completo
Sistema Linux (Swoole no admite la ejecución en Windows)
PHP >= 8.1
Compositor >= 2.0
Lana >= 5.0
Redis, extensión PDO
Se recomienda utilizar el Docker oficial de Swoole: https://github.com/swoole/docker-swoole
Ya sea que esté desarrollando el uso de imi en un proyecto personal o de empresa, ya sea un proyecto de código abierto o comercial, puede enviarnos su caso.
Revisaremos el caso que envió y podremos mostrarlo en el sitio web oficial de imi, el sitio web oficial de Swoole, etc., lo que ayudará a promover y desarrollar su proyecto.
Formato de envío:
Nombre del proyecto
Introducción del proyecto
Dirección del proyecto (sitio web oficial/dirección de descarga/Github, etc. al menos uno)
Información de contacto (teléfono/correo electrónico/QQ/WeChat, etc. al menos uno)
Capturas de pantalla del proyecto (opcional)
Observaciones
Caso de éxito: https://www.imiphp.com/case.html
Imi se desarrollará mejor con sus casos. Los usuarios calificados pueden publicar casos de proyectos, ¡lo cual también es un tipo de publicidad gratuita!
imi se publica bajo la licencia de código abierto Mulan PSL v2 y su uso es gratuito.
¡Gracias a los siguientes proyectos de código abierto (en orden alfabético) por brindar un gran apoyo a imi!
doctrina/anotaciones (biblioteca de procesamiento de anotaciones PHP)
PHP (Sin PHP, no habría imi)
Swoole (Sin Swoole no habría imi)
¿Quieres aparecer como colaborador?
Cosas que puede hacer (incluidas, entre otras, las siguientes):
Corregir ortografía y errores tipográficos.
Mejorar comentarios
corrección de errores
Desarrollo de funciones
Documentación
Tutoriales, compartir blogs.
Envíe Pull Request
a este repositorio y podrá convertirse en colaborador de imi.
Para obtener detalles sobre cómo participar en el tutorial de desarrollo del marco: https://doc.imiphp.com/v3.0/adv/devp.html