Nate 0096f84ee9 Config for the new toolset (#6259) před 4 roky
..
.runtime a51a9b807f Add imi (#5091) před 5 roky
ApiServer 49fad44bc0 Optimize code (#6238) před 4 roky
Listener e9db49ebbd Add imi Caching test (#5860) před 5 roky
Model a51a9b807f Add imi (#5091) před 5 roky
config 49fad44bc0 Optimize code (#6238) před 4 roky
.env-with-redis e9db49ebbd Add imi Caching test (#5860) před 5 roky
.gitignore a51a9b807f Add imi (#5091) před 5 roky
Main.php 69b5ba56fe Optimise imi (#6046) před 4 roky
README.md a51a9b807f Add imi (#5091) před 5 roky
benchmark_config.json e9db49ebbd Add imi Caching test (#5860) před 5 roky
composer.json a51a9b807f Add imi (#5091) před 5 roky
config.toml 0096f84ee9 Config for the new toolset (#6259) před 4 roky
imi-query-builder.dockerfile 0096f84ee9 Config for the new toolset (#6259) před 4 roky
imi-raw.dockerfile 0096f84ee9 Config for the new toolset (#6259) před 4 roky
imi.dockerfile 0096f84ee9 Config for the new toolset (#6259) před 4 roky
php.ini 3e7918e502 Change process mode (#5247) před 5 roky
run-with-redis.sh e9db49ebbd Add imi Caching test (#5860) před 5 roky

README.md

imi

Latest Version Travis Php Version Swoole Version imi Doc imi License

介绍

imi 是基于 PHP Swoole 的高性能协程应用开发框架,它支持 HttpApi、WebSocket、TCP、UDP 服务的开发。

在 Swoole 的加持下,相比 php-fpm 请求响应能力,I/O密集型场景处理能力,有着本质上的提升。

imi 框架拥有丰富的功能组件,可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。

imi 框架交流群:17916227 点击加群

核心组件

  • HttpApi、WebSocket、TCP、UDP 服务器
  • MySQL 连接池 (主从+负载均衡)
  • Redis 连接池 (主从+负载均衡)
  • 超好用的 ORM (Db、Redis、Tree)
  • 毫秒级热更新
  • AOP
  • Bean 容器
  • 缓存 (Cache)
  • 配置读写 (Config)
  • 枚举 (Enum)
  • 事件 (Event)
  • 门面 (Facade)
  • 验证器 (Validate)
  • 锁 (Lock)
  • 日志 (Log)
  • 异步任务 (Task)

扩展组件

开始使用

创建 Http Server 项目:composer create-project imiphp/project-http

创建 WebSocket Server 项目:composer create-project imiphp/project-websocket

创建 TCP Server 项目:composer create-project imiphp/project-tcp

创建 UDP Server 项目:composer create-project imiphp/project-udp

完全开发手册

运行环境

  • Linux 系统 (Swoole 不支持在 Windows 上运行)
  • PHP >= 7.1
  • Composer
  • Swoole >= 4.3.0
  • Redis、PDO 扩展

版权信息

imi 遵循 木兰宽松许可证(Mulan PSL v1) 开源协议发布,并提供免费使用。

鸣谢

感谢以下开源项目 (按字母顺序排列) 为 imi 提供强力支持!

贡献者

你想出现在贡献者列表中吗?

你可以做的事(包括但不限于以下):

最新代码以 dev 分支为准,提交 PR 也请合并至 dev 分支!

提交 Pull Request 到本仓库,你就有机会成为 imi 的作者之一!

关于测试脚本

环境要求

Redis、MySQL

首次运行测试

  • 创建 db_imi_test 数据库,将 tests/db/db.sql 导入到数据库

  • 配置系统环境变量,如果默认值跟你的一样就无需配置了

名称 | 描述 | 默认值 -|-|- MYSQL_SERVER_HOST | MySQL 主机名 | 127.0.0.1 | MYSQL_SERVER_PORT | MySQL 端口 | 3306 | MYSQL_SERVER_USERNAME | MySQL 用户名 | root | MYSQL_SERVER_PASSWORD | MySQL 密码 | root | REDIS_SERVER_HOST | Redis 主机名 | 127.0.0.1 | REDIS_SERVER_PORT | Redis 端口 | 6379 | REDIS_SERVER_PASSWORD | Redis 密码 | | REDIS_CACHE_DB | Redis 缓存用的 db,该 db 会被清空数据,请慎重设置 | 1 |

配置命令:export NAME=VALUE

  • 首次运行测试脚本:composer install-test

  • 首次之后再运行测试的命令:composer test

捐赠

开源不求盈利,多少都是心意,生活不易,随缘随缘……