auto backup 2026-08-12 23:00
This commit is contained in:
+1
-1
@@ -1,2 +1,2 @@
|
||||
openclaw-workspace-attestation:v1
|
||||
2026-08-12T13:59:45.622Z
|
||||
2026-08-12T14:58:28.426Z
|
||||
|
||||
@@ -16,9 +16,12 @@
|
||||
- 初始化脚本:npm run init-redis(需先注入 MYSQL_PASSWORD/REDIS_PASSWORD 环境变量)
|
||||
- 文档:DEPLOY.md(部署)/ FRONTEND-CHANGES.md(前端改造)
|
||||
- 部署状态(2026-08-12):pm2 运行中,端口 48080,内存 ~45MB,内存占用远低于原 Spring Boot
|
||||
- 前端已改造:env.js(baseUrl 同源) + http.js(去认证) + nav.js(/app-api/tab/ → /tab/),已 build 产物入 public/
|
||||
- 前端已改造:env.js(baseUrl=/api,走 nginx 反代) + http.js(去认证) + nav.js(/app-api/tab/ → /tab/)
|
||||
- 密码:MySQL readonly 密码 135246;Redis 密码 5gynj20J(存放于 server/.env,供 Node 服务启动用)
|
||||
|
||||
## 工作日志
|
||||
- 2026-08-12(去 Spring Boot 化 + Node 服务 VPS 部署):memory/2026-08-12.md
|
||||
|
||||
## 项目结构
|
||||
- 详细结构文档(前端 cc-square / 后端 ruoyi-vue-pro 各模块 / tab 调用链):memory/project-structure.md
|
||||
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
# 工作日志 2026-08-12
|
||||
|
||||
## 主题:cc-square 去 Spring Boot 化 —— Node 轻服务 + Redis 点击计数
|
||||
|
||||
### 背景 / 起因
|
||||
- VPS 内存紧张,需放弃部署重型的 Spring Boot 后端(yudao/ruoyi-vue-pro)
|
||||
- 前端需改造为"独立查询数据"形式
|
||||
- 书签排序需要"访问次数"记录
|
||||
|
||||
### 关键决策(用户确认)
|
||||
1. 点击次数**只存 Redis**,不落 MySQL
|
||||
2. Redis 启用持久化(VPS Redis 已支持 AOF)
|
||||
3. 排序规则:**纯点击倒序**(ZREVRANGE)
|
||||
4. Node 服务部署在 VPS
|
||||
5. 前端 baseUrl 走 nginx `/api` 反代(rewrite 剥 /api → 48080)
|
||||
|
||||
### 最终架构
|
||||
```
|
||||
前端(cc-square) → nginx(/api rewrite) → Node(Express, 48080) → MySQL(只读) + Redis(点击/排序)
|
||||
```
|
||||
|
||||
### 连接凭据确认(已验证)
|
||||
- 公网 MySQL:`101.34.227.188:3306`,readonly,密码 135246,host `%`(任意来源)
|
||||
- 公网 Redis:`101.34.227.188:6379`,密码 5gynj20J,AOF 持久化
|
||||
- 验证结果:MySQL 连接+查询通(cc_website 212行/cc_engine 23行/cc_website_type 11行)
|
||||
- cc_website 启用 124 条;字段:id/status/type_id/title/click/order/icon/url/description...
|
||||
- cc_website_type 分类名为 **title** 列(非 name),且有 order
|
||||
- cc_engine 无 order 列,排序仅按 click
|
||||
|
||||
### 交付物(/home/yangxuan/cc-square/server/)
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| server.js | 主程序:静态托管 + /tab/* 接口 + Redis 计数/排序 |
|
||||
| config.js | 配置(支持环境变量)|
|
||||
| scripts/init-redis.js | Redis 历史点击导入(幂等)|
|
||||
| ecosystem.config.js | pm2 配置 |
|
||||
| package.json | 依赖 express/mysql2/redis/axios |
|
||||
| .env.example | 环境变量模板 |
|
||||
| DEPLOY.md | 部署文档(含完整 pm2 命令)|
|
||||
| FRONTEND-CHANGES.md | 前端改造说明 |
|
||||
| README.md | 服务导航 |
|
||||
|
||||
### Node 服务接口(全部实测通过)
|
||||
| 方法 | 路径 | 数据源 |
|
||||
|------|------|--------|
|
||||
| GET | /tab/engine | MySQL cc_engine |
|
||||
| GET | /tab/bookmark | MySQL cc_website_type 聚合 |
|
||||
| GET | /tab/menu | MySQL |
|
||||
| GET | /tab/quick?limit=N | Redis ZREVRANGE 点击排行 |
|
||||
| GET | /tab/list-by-type?typeId=N | MySQL |
|
||||
| GET | /tab/searchBookmark?keyword=x | MySQL |
|
||||
| GET | /tab/weather/all | 高德API(未配置key时返回空,优雅降级)|
|
||||
| POST | /tab/quickCount | Redis ZINCRBY(书签)|
|
||||
| POST | /tab/engineCount | Redis ZINCRBY(引擎)|
|
||||
| GET | /health | 健康检查 |
|
||||
|
||||
### 前端改造(已完成)
|
||||
1. `src/config/env.js`:baseUrl 改为 `/api`(nginx 反代)
|
||||
2. `src/request/http.js`:重写精简版,去掉 token/key 认证
|
||||
3. `src/request/api/nav.js`:`/app-api/tab/` → `/tab/`
|
||||
- 已 build 成功(1720 模块),响应格式兼容原 yudao `{code:0,data,msg}`
|
||||
|
||||
### 部署状态
|
||||
- **本机(xuan-main)**:Node 服务 pm2 跑通验证(48080),接口全通
|
||||
- **VPS(xuan-vps / 101.34.227.188)**:
|
||||
- 已备份旧前端 → `/usr/share/nginx/html.bak.20260812`
|
||||
- apt 装 Node v22.23.1 + pm2 7.0.3(用户手动装)
|
||||
- server 代码在 `/opt/cc-square-server/`,npm install 完成(104 包)
|
||||
- `.env` 已建(含密码,600 权限)
|
||||
- Redis 已初始化(120 书签 / 3 引擎)
|
||||
- **Node 服务启动 + 前端 dist 替换由用户手动完成**
|
||||
- **nginx**:主站 climbcube.conf 已有 `/api` 反代 → `rewrite ^/api(.*)$ $1 break; proxy_pass http://localhost:48080;`
|
||||
- 前端静态目录:`/usr/share/nginx/html`(index.html 即 cc-square 导航页)
|
||||
|
||||
### 待办 / 遗留
|
||||
- [ ] VPS 上启动 Node 服务(用户手动):pm2 start ecosystem.config.js
|
||||
- [ ] VPS 替换前端 dist 至 /usr/share/nginx/html(用户手动)
|
||||
- [ ] 前端 baseUrl 需为 /api(本机已改,dist 需重新 build 后上传)
|
||||
- [ ] 天气接口需高德 key
|
||||
- [ ] 安全建议:readonly host `%` 建议收窄(需用户确认)
|
||||
|
||||
### 环境备注
|
||||
- 本机 shell 是 zsh(注意 pkill/zsh 通配符坑)
|
||||
- VPS 是 Debian 12,内存 3.7G,磁盘 69G/32G 已用
|
||||
- VPS 上多处是 debian 用户属主(/usr/share/nginx/html, /opt/cc-square-server)
|
||||
Reference in New Issue
Block a user