2020-11-10 23:16:55 +08:00
|
|
|
|
# 介绍
|
2020-11-22 19:18:23 +08:00
|
|
|
|
炸毛框架使用 PHP 编写,采用 Swoole 扩展为基础,主要面向 API 服务,聊天机器人(CQHTTP 对接),包含 websocket、http 等监听和请求库,用户代码采用模块化处理,使用注解可以方便地编写各类功能。
|
2020-11-10 23:16:55 +08:00
|
|
|
|
|
|
|
|
|
|
框架主要用途为 HTTP 服务器,机器人搭建框架。尤其对于 QQ 机器人消息处理较为方便和全面,提供了众多会话机制和内部调用机制,可以以各种方式设计你自己的模块。
|
|
|
|
|
|
|
|
|
|
|
|
在 HTTP 和 WebSocket 服务器上,PHP 的扩展 Swoole 提供了高性能的支持,使其效率可媲美 nginx 静态网页处理的效率。
|
|
|
|
|
|
|
2020-11-22 19:18:23 +08:00
|
|
|
|
此外,QQ 机器人方面此框架基于 OneBot 标准的反向 WebSocket 连接,比传统 HTTP 通信更快,未来也会兼容微信公众号开发者模式。
|
|
|
|
|
|
|
|
|
|
|
|
```php
|
|
|
|
|
|
/**
|
|
|
|
|
|
* @CQCommand("你好")
|
|
|
|
|
|
*/
|
|
|
|
|
|
public function hello() {
|
|
|
|
|
|
ctx()->reply("你好,我是炸毛!");
|
|
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
|
|
|
* @RequestMapping("/index")
|
|
|
|
|
|
*/
|
|
|
|
|
|
public function index() {
|
|
|
|
|
|
return "<h1>hello!</h1>";
|
|
|
|
|
|
}
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-11-10 23:16:55 +08:00
|
|
|
|
|
|
|
|
|
|
## 开始前
|
|
|
|
|
|
|
2020-11-22 19:18:23 +08:00
|
|
|
|
首先,你需要了解你需要知道哪些事情才能开始着手使用框架:
|
2020-11-10 23:16:55 +08:00
|
|
|
|
|
2020-11-22 19:18:23 +08:00
|
|
|
|
1. Linux 命令行基础
|
|
|
|
|
|
2. php 7.2+ 开发环境
|
|
|
|
|
|
3. HTTP 协议(可选)
|
|
|
|
|
|
4. OneBot 机器人聊天接口标准(可选)
|
2020-11-10 23:16:55 +08:00
|
|
|
|
|
2020-11-22 19:18:23 +08:00
|
|
|
|
需要值得注意的是,本教程中所涉及的内容均为尽可能翻译为白话的方式进行描述,但对于框架的组件或事件等需要单独拆分说明文档的部分则需要足够详细,所以本教程提供一个快速上手的教程,并且会将最典型的安装方式写到快速教程篇。
|
2020-11-10 23:16:55 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 框架特色
|
|
|
|
|
|
- 支持MySQL数据库(连接池),自带查询缓存提高多查询时的效率
|
|
|
|
|
|
- Websocket 服务器、HTTP 服务器兼容运行,一个框架多个用处
|
|
|
|
|
|
- 支持命令、自然语言处理等多种插件形式
|
|
|
|
|
|
- 支持多个机器人账号负载均衡
|
|
|
|
|
|
- 协程 + TaskWorker 进程重度任务处理机制,保证高效,单个请求响应时间为 0.1 ms 左右
|
|
|
|
|
|
- 模块分离和自由组合,可根据自身需求自己建立模块内的目录结构和代码结构
|
|
|
|
|
|
- 灵活的注释注解注册事件方式,弥补 PHP 语言缺少注解的遗憾
|