Ubuntu下利用Postman进行性能监控
一、方案总览
- 使用 Postman 的监视器 Monitors对 API 进行定时拨测与性能阈值校验,可查看平均响应时间、可用性百分比、停机事件等,并在异常时通过邮件/Webhook/Slack告警。
- 在 Ubuntu 上用 Newman 执行集合,结合 CI/CD 做持续性能回归与报表归档(JUnit、HTML 等)。
- 使用 Linux 系统监控(如 top/htop/vmstat)观察被测服务的CPU、内存、I/O等系统指标,定位瓶颈。
- 注意定位:Postman/Newman 适合轻量级/回归型性能与可用性监控;复杂压测(并发、RPS、分布式)建议使用 JMeter、k6、Locust 等专业工具。
二、基于 Postman Monitors 的定时性能监控
- 创建监视器
- 入口:Postman 左侧 Monitors → + → 选择 Uptime monitor(单 URL 拨测)或 Collection-based monitor(集合脚本化拨测)。
- 配置要点:
- 目标 URL(Uptime)或选择要运行的集合(Collection)。
- 运行频率:免费计划 Uptime 最多每15 分钟、Collection 最多每1 小时;付费计划可更高频(Uptime 最高每1 分钟,Collection 最高每5 分钟)。
- 运行地区:可多区域(付费),免费计划自动选择区域。
- 通知:添加团队成员邮箱,或配置 Webhook/Slack 集成。
- 性能阈值与断言示例(写入集合的 Tests 脚本)
- 响应时间阈值:
- pm.test(“Response time < 2s”, () => pm.expect(pm.response.responseTime).to.be.below(2000));
- 可用性校验:
- pm.test(“Status 200”, () => pm.response.to.have.status(200));
- 结构/内容校验(按需):
- pm.test(“Content-Type is JSON”, () => pm.expect(pm.response.headers.get(“Content-Type”)).to.include(“application/json”));
- 查看与告警
- 监视器仪表板可查看平均响应时间、可用性百分比、停机事件与历史趋势;发生失败或停机将按配置邮件/Webhook通知。
三、在 Ubuntu 上用 Newman 与 CI/CD 做持续性能回归
- 安装与运行
- 安装 Newman:npm install -g newman
- 运行集合并输出报告:
- newman run “API Tests.postman_collection.json” -e “Staging.postman_environment.json”
–reporters cli,json,html,junit
–reporter-json-export report.json
–reporter-html-export report.html
–reporter-junit-export junit.xml
- GitHub Actions 示例(每次 push 触发)
- name: API Performance Regression
on: push
jobs:
perf:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm install -g newman
- run: |
newman run “API Tests.postman_collection.json” -e “Staging.postman_environment.json”
–reporters cli,json,html,junit
–reporter-junit-export junit.xml
- 解读与阈值
- 在 Newman 报表/CI 中关注:平均响应时间、p95/p99、失败率、断言结果;将阈值写入 Tests 脚本,使 CI 结果“可失败”。
四、系统资源监控与瓶颈定位
- 在压测/拨测期间,于 Ubuntu 服务器上并行观察:
- 整体资源:top/htop(CPU、内存、负载)、vmstat(上下文切换、I/O)、iostat(磁盘)、ifstat/sar(网络)。
- 目标进程:pidstat -u -p 1(按进程看 CPU)、pmap -x (内存映射)、netstat -s(TCP 重传等)。
- 方法建议
- 固定并发/迭代,逐步增加负载,观察响应时间拐点与错误率变化,同时对照CPU/内存/网络/磁盘是否成为瓶颈。
- 将系统指标与 Postman/Newman 报表时间戳对齐,便于定位因果。
五、实践建议与限制
- 适用场景
- Postman/Newman:适合功能+轻量性能回归、多环境一致性校验、定时可用性/性能拨测与CI/CD 集成。
- 复杂压测:需要高并发/RPS 控制/分布式时,使用 JMeter、k6、Locust 等专业工具更稳妥。
- 监控频率与配额
- 免费计划:Uptime 最多每15 分钟、Collection 最多每1 小时;付费计划可提高频率与多区域运行。
- 单次监视器运行整体超时 5 分钟(无法在请求级配置);如需更长超时或更复杂的负载模型,请选择专业压测工具。