系统软件 应用软件 图形软件 行业软件 安全相关 网络软件 聊天软件 影音软件 教育教学 驱动工具 编程开发 插件下载 源码下载 APP电脑版 其他类别

imi官方版

v1.2.20

imi官方版

  • 软件大小:0.61 MB
  • 软件语言:简体中文
  • 软件授权:共享软件
  • 软件类型:编程开发
  • 软件平台:WinAll
  • 更新时间:2022-01-27 15:11
  • 星级评分:4级
  • 软件官网:https://www.downza.com/
好评:50%顶一个
坏评:50踩一个

imi简介

imi是一个应用开发框架。有了这个软件,用户可以创建新的应用程序。可以利用内置的功能组件开发相关的应用功能模块,提供MySQL连接池(主从+负载均衡)、超级用户ORM (Db、Redis、Tree)等核心组件。无论您是配置请求还是配置移动通信,都可以在软件中轻松开发相应的功能。基于软件PHP Swoole的开发,如果你了解Swoole,可以快速使用imi创建新的开发项目。您可以配置多个开发项目,创建多个子项目,在软件中创建Swoole Request事件,以及创建RequestContext。如果你需要这个软件,可以下载使用!

imi软件功能

imi框架——一个基于Swoole的PHP协同开发框架

能量高,功能强大,运行稳定,开发方便。

支持Http、Http2、WebSocket、TCP、UDP、MQTT等主流协议的服务开发。

特别适合互联网微服务、即时通讯聊天im、物联网等场景!

内存常驻:作为Swoole框架,可以避免反复加载造成的能量损失,提高能量。

异步处理:提高数据库查询等I/O密集型场景的并发处理能力。

毫秒级热更新重启:imi的开发效率和传统PHP框架一样,保存和查看,开发体验和fpm没什么区别。

imi软件特色

imi框架功能组件

最好的Swoole框架是什么?当然imi!

Http服务器

Http2服务器

网络套接字服务器

Tcp服务器

Udp服务器

MQTT服务器

集装箱(PSR-11)

Aop注射

Http中间件(PSR-15)

MySQL连接池(主从+负平均值)

Redis连接池(负载平衡)

Db相干操作

ORM连贯工作

可记忆模型

验证器(验证)

智(-3)

缓存(PSR-16)

Redis模型

任务异步任务

流程/流程池

命令行开发辅助工具

以及注释和代码的毫秒级热更新。

imi教程

开始新项目

项目初始化

创建一个Http服务器项目:composer-pProjectimiPHP/pProject-Http

创建网络套接字服务器项目:Composer-pjectimiPHP/pject-网络套接字

创建TCP服务器项目:Composer-p projectimiPHP/p project-TCP

创建UDP服务器项目:Composer-PjectimiPHP/Pject-UDP

创建MQTT服务器项目:Composer-PjectimiPHP/Pject-MQTT

如何操作请参见上述项目中的README.md。

项目最终将使用什么协议与上面的命令行无关。命令行项目只提供了一个快捷方式,可以通过修改配置文件来改变服务的通信协议。

生产过程说明

在imi框架中,一个项目分为一个主项目和多个子项目。

其中,科目是必选的,孩子是可选的。孩子是通过监听端口实现的,一般不建议打开太多孩子。

您需要为框架创建一个Main.php,每个都在它的名称空间目录中,并将类命名为Main。

项目的Main必须继承Imi Main AppBaseMain类。

的Main必须继承Imi Main BaseMain类。

并实现__init()方法:

您可以在其中进行一些初始化,但大多数时候您不需要做任何事情。

流程名称管理

imi以统一的方式管理已启动进程的进程名。您可以在@ app.pcess中进行自定义。默认设置为:

异常捕获出错

imi底层框架支持将错误转化为异常。尝试& # 8230;接住接住。

默认情况下,它未启用。您可以通过配置设置错误捕获的级别并启用它:

config.php豆类配置

与llphp的原生err_reporting()函数参数相同。

引发的异常类是ErrException。

子(单项目多端口多协议)

imi原生支持一个项目、单次启动以及对多个端口和多个协议的监控。

比如想搭建一个聊天系统,http用于注册、登录、上传文件等,WebSocket用于即时通讯。

Http和WebSocket同时在同一个项目中,代码之间没有间隙,可以很容易地相互调用和重用。

子配置

项目概况:

命名空间配置

在子命名空间所在的目录中,您需要创建一个Main.php条目文件。

子配置文件

文件:config/config.php

只有在beanScan中配置了才能扫描,批注才能生效。

内部进程间通信

为了便于过程内的通信,进行数据交换。imi v1.2.0版增加了内部进程间通信包。

通过使用由Swoole提供的sendMessage()和onPipeMessage事件来实现。

在onPipeMessage事件中,当接收到指定结构的数据时,会触发相应的事件。

我们只需要监控事件。

介绍

数据结构

事件名称

Imi.pipe _ message.action名称

代码示例

发送并聆听。

发送:

监视器:

活动名称是IMI。PIPE_MESSAGE.test

并发送返回的数据。

思考:

一般来说,发送消息不像http请求,必须有响应结果。

但是有时候,我们需要得到返回的数据。

方法很简单,比如发送数据的动作叫做testRequest,然后定义一个testResponse动作监视器来接收数据。

然后用Channel进行协调,等待响应结果。完美!

发送请求并等待响应:

收听请求:

活动名称是IMI。PIPE_MESSAGE.testRequest

监控响应:

活动名称是IMI。PIPE_MESSAGE.testResponse

注入值注释

imi中有一种标注,支持动态向标注亏格注入值,只有在调用标注亏格时才实时计算返回。

注释描述

@ConstValue

从常数中读取值

@ConfigValue

从配置中读取值

@注入

对象注入,使用:App::getBean()

@RequestInject

对象注入,使用:RequestContext::getBean()

与@Inject相同

@回调

回调注释

示例用法

@DbInject

注入数据库对象

@RedisInject

注入Redis对象

@PoolResource

注入连接池资源

收起介绍展开介绍
  • 安卓合集
  • 软件合集
  • 浏览器
  • 电脑管家
  • 安卓游戏
更多 >> 安卓合集安卓合计

热门推荐

装机必备软件