imi协程开发框架 v2.1.1
v0
imi协程开发框架更新日志:
v2.1.0
2022年来了,imi2.0经历漫长的开发过程,正式发布后又持续迭代了4个月,目前已经比较稳定。
imi2.0、1.3作为LTS版本,为保持稳定性,持续提供问题修复、安全修复,不再提供功能更新,暂无终止维护时间表。
imiv2.1.0带来了两个新特性:宏定义和异步日志。并且将最低支持的Swoole版本提升至v4.8,PHP版本要求保持不变,依然是PHP>=7.4。
异步日志
顾名思义,不再需要被日志记录的IO拖慢接口响应,一切都是异步的。
只需要在@app.logger中增加:'async'=>true就可以启用。
该特性仅Swoole有效。
宏定义
支持在imi框架中使用宏定义。
支持在PHP代码中使用类似C/C++中的宏,进行代码预编译。
可以方便兼容不同版本和环境下运行的PHP代码。
在一些场景可以通过预定义常量,来提升性能,减少运行时判断。
本组件基于Yurunsoft/php-macro组件,该组件由宇润主导开发。
imi是基于Swoole的PHP协程开发框架,它支持Http、Http2、WebSocket、TCP、UDP、MQTT等主流协议的服务开发,特别适合互联网微服务、即时通讯聊天im、物联网等场景!。
核心组件:
HttpApi、WebSocket、TCP、UDP、MQTT服务器
MySQL连接池(主从+负载均衡)
Redis连接池(主从+负载均衡)
超好用的ORM(Db、Redis、Tree)
毫秒级热更新
AOP
Bean容器
缓存(Cache)
配置读写(Config)
枚举(Enum)
事件(Event)
门面(Facade)
验证器(Validate)
锁(Lock)
日志(Log)
异步任务(Task)
环境要求:
Redis、MySQL