Python+Vue +K6接口性能压测平台搭建

一、技术栈

前端: Vue 3 + Vite + NaiveUI + TypeScript

后端: Python + FastAPI + SQLAlchemy

数据库: MySQL 8.0

压测引擎: K6(需要先安装好K6)

二、前置条件

环境准备

K6: 确保已安装 K6

bash 复制代码
# Windows
winget install k6 --source winget
# 或
choco install k6

# 验证安装
k6 version

Python 3.10+: 确保已安装 Python

Node.js 18+: 确保已安装 Node.js

MySQL 8.0: 确保已安装并运行 MySQL

三、数据库初始化

bash 复制代码
CREATE DATABASE k6_perftest CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

四、配置好数据库


五、后端启动

bash 复制代码
cd backend

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境
# Windows:
.\venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate

# 安装依赖
pip install -r requirements.txt

# 启动服务
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

六、前端启动

bash 复制代码
cd frontend

# 安装依赖
npm install

# 启动开发服务器
npm run dev

前端启动需要注意,nmp install 安装会比较慢,建议用如下方法

  1. 配置 yarn 使用国内镜像源(推荐)
    设置 yarn 的 registry 为淘宝新镜像,该镜像的证书通常是正常的:
bash 复制代码
yarn config set registry https://registry.npmmirror.com
  1. 然后再执行安装:
bash 复制代码
yarn install
  1. 临时关闭 yarn 的严格 SSL 校验(快速但不安全)
bash 复制代码
yarn config set strict-ssl false
yarn install

安装完成后建议恢复:

bash 复制代码
yarn config set strict-ssl true
  1. 使用 cnpm 或 npm 代替 yarn(因为 cnpm 已安装成功)
    已经成功安装了 cnpm,可以用 cnpm 直接安装项目依赖:
bash 复制代码
cnpm install

或者使用 npm(如果之前配置了正确的 registry):

bash 复制代码
npm install
  1. 检查当前 yarn 的配置
    你可以查看当前的 registry 和 strict-ssl 设置:
bash 复制代码
yarn config get registry
yarn config get strict-ssl

七、项目结构

bash 复制代码
K6_PerfTest/
├── backend/                    # 后端项目
│   ├── app/
│   │   ├── main.py            # FastAPI 入口
│   │   ├── config.py          # 配置
│   │   ├── database.py        # 数据库连接
│   │   ├── models/            # 数据模型
│   │   ├── schemas/           # Pydantic 模式
│   │   ├── api/               # API 路由
│   │   ├── services/          # 业务逻辑
│   │   └── websocket/         # WebSocket
│   ├── scripts/               # 生成的 K6 脚本
│   ├── results/               # 执行结果
│   ├── requirements.txt
│   └── .env
├── frontend/                  # 前端项目
│   ├── src/
│   │   ├── App.vue           # 主组件
│   │   ├── components/       # 子组件
│   │   ├── api/              # API 客户端
│   │   ├── types/            # 类型定义
│   │   └── styles/           # 样式
│   ├── package.json
│   └── vite.config.ts
└── README.md

八、启动访问

  1. 前后端启动后访问前端域名:

    http://localhost:5173/

  2. 配置请求接口参数及用户数以及压测时长

  3. 运行后等待结果

  4. 执行后查看压测结果

相关推荐
晨曦中的暮雨14 分钟前
限流算法——固定窗口、滑动窗口、漏桶、令牌桶
java·开发语言·算法
喵了几个咪1 小时前
GoWind CMS 拆解:在 Go 里给 TipTap 搭一套 Yjs 协同后端
开发语言·后端·golang
程序员清风1 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
小大宇2 小时前
Vue知识点6-computed计算属性
前端·javascript·vue.js
程序员海军2 小时前
尤雨溪 : Vue 4 已经在规划中了!
前端·javascript·vue.js
在世修行2 小时前
智学文枢:页面切换与跨页数据预填
python·桌面应用·signal·1024程序员节·pyside·跨页跳转·状态预填
2601_962885723 小时前
如何用 Python 把 K 线重采样成任意周期?
开发语言·python
打工仔折腾 AI3 小时前
在 Ubuntu ARM64 部署 Q1 V3.0 MuJoCo 模型:加载、单步推理与执行器响应解析
linux·运维·人工智能·python·深度学习·ubuntu·性能优化
Wang's Blog3 小时前
Java 项目实战: 交友项目 - 圈子功能实现:总结
java·开发语言·交友
信誓旦旦的程序猿4 小时前
【Python量化实战宝典 #21】北向资金跟随手册:聪明钱择时信号(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口