- 添加 Dockerfile 与多套 docker-compose 配置(开发/生产环境) - 集成 Laravel Octane (Swoole) 提升性能 - 新增健康检查、监控脚本及部署文档 - 新增 Docker 镜像离线导入包(MySQL/Redis/Meilisearch) - 优化文档转换、预览服务及队列任务 - 添加 CreateAdminUser 命令与路由健康检查接口 - 新增 Swoole 队列兼容性测试套件 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
108 lines
1.8 KiB
Markdown
108 lines
1.8 KiB
Markdown
# Laravel Octane 安装文档
|
|
|
|
## 概述
|
|
|
|
本文档记录了在知识库系统中安装和配置 Laravel Octane 的过程。Laravel Octane 通过 Swoole 提供高性能的 PHP 应用服务器。
|
|
|
|
## 安装步骤
|
|
|
|
### 1. 安装 Laravel Octane 包
|
|
|
|
```bash
|
|
composer require laravel/octane
|
|
```
|
|
|
|
### 2. 发布配置文件
|
|
|
|
```bash
|
|
php artisan octane:install --server=swoole
|
|
```
|
|
|
|
### 3. 环境变量配置
|
|
|
|
在 `.env` 文件中添加以下 Swoole 相关配置:
|
|
|
|
```bash
|
|
# Octane/Swoole 配置
|
|
OCTANE_SERVER=swoole
|
|
OCTANE_HOST=0.0.0.0
|
|
OCTANE_PORT=8000
|
|
OCTANE_WORKERS=4
|
|
OCTANE_TASK_WORKERS=2
|
|
OCTANE_MAX_REQUESTS=500
|
|
OCTANE_WATCH=false
|
|
```
|
|
|
|
### 4. 配置文件更新
|
|
|
|
- `config/octane.php`: 默认服务器设置为 `swoole`
|
|
- `composer.json`: 添加了 `dev-octane` 脚本支持
|
|
|
|
## 验证安装
|
|
|
|
### 检查配置
|
|
|
|
```bash
|
|
php artisan config:show octane.server
|
|
```
|
|
|
|
应该显示: `swoole`
|
|
|
|
### 检查命令可用性
|
|
|
|
```bash
|
|
php artisan octane:status
|
|
```
|
|
|
|
应该显示: `Octane server is not running.`
|
|
|
|
### 运行测试
|
|
|
|
```bash
|
|
php artisan test tests/Feature/OctaneInstallationTest.php
|
|
```
|
|
|
|
## 使用方法
|
|
|
|
### 启动 Octane 服务器
|
|
|
|
```bash
|
|
php artisan octane:start
|
|
```
|
|
|
|
### 带监听文件变化启动
|
|
|
|
```bash
|
|
php artisan octane:start --watch
|
|
```
|
|
|
|
### 使用 Composer 脚本启动开发环境
|
|
|
|
```bash
|
|
composer run dev-octane
|
|
```
|
|
|
|
### 停止服务器
|
|
|
|
```bash
|
|
php artisan octane:stop
|
|
```
|
|
|
|
### 重启服务器
|
|
|
|
```bash
|
|
php artisan octane:restart
|
|
```
|
|
|
|
## 注意事项
|
|
|
|
1. **Swoole 扩展**: 在生产环境中需要安装 Swoole PHP 扩展
|
|
2. **内存驻留**: 应用会保持在内存中,需要注意内存泄漏
|
|
3. **全局变量**: 避免使用全局变量和静态变量
|
|
4. **配置缓存**: 建议在生产环境中使用配置缓存
|
|
|
|
## 下一步
|
|
|
|
- 更新 Docker 配置以支持 Swoole
|
|
- 配置生产环境部署脚本
|
|
- 进行性能测试和优化 |