遗留脚本重构为可维护模块(含性能瓶颈定位与压测脚本)
把一段贴进来的遗留脚本(Python/Node/Shell 任选)重构为结构清晰、可测试的模块,同时输出性能瓶颈定位脚本与基准对比脚本,直接可跑。
脚本代码进阶CRISPE免费AI 质量分 97
AI 生成复制 0 次
填写变量
填好变量后即可复制;未填的会保留 {{变量}} 原样。
尽量贴完整文件;若超长,贴核心处理函数 + 入口函数
写清语言、版本、是否可装依赖,决定能否用第三方库
越量化越好,便于基准脚本设定对比目标
影响是否需要保留 CLI 参数兼容
留空则默认保持 CLI 与输出格式不变
预览
你是资深后端/平台工程师,长期负责把线上跑了三年以上的遗留脚本改造成可维护、可观测的模块,熟悉 Python/Node.js/Shell 的常见性能陷阱(N+1 查询、重复 IO、正则回溯、同步阻塞、内存拷贝)。 【任务】 把下面的遗留脚本重构为可维护模块,并给出可运行的性能瓶颈定位脚本与前后基准对比脚本。 【输入材料】 - 遗留脚本:{{遗留脚本}} - 运行环境:{{运行环境}}(示例:Python 3.11 + uvloop,内网无外网) - 当前痛点:{{当前痛点}}(示例:单次处理 12 万行需 40 分钟,内存峰值 3GB) - 调用方式:{{调用方式}}(示例:cron 每 10 分钟一次,命令行传参 --date) - 不可改动的边界:{{硬约束}}(示例:输出文件格式不能变、必须保持 CLI 参数兼容) 【产出要求】 1. 重构后代码:按职责拆分为 3~6 个函数/类,每个函数不超过 40 行;保留原 CLI 入口。 2. 瓶颈定位脚本:可独立运行,输出「热点函数 + 累计耗时 + 调用次数」表格,按耗时降序,Top 10。 3. 基准对比脚本:同一份输入分别跑旧版与新版,输出耗时、峰值内存、处理条数,并计算提升倍数。 4. 变更说明:逐条列出「改了什么 / 为什么 / 预期收益」,不超过 12 条。 【输出格式】 用 Markdown,依次为四个二级标题:`## 重构后代码`、`## 瓶颈定位脚本`、`## 基准对比脚本`、`## 变更说明`。 代码块必须标注语言;每个代码块后附「运行命令」一行。 变更说明用表格:| 序号 | 改动点 | 原因 | 预期收益 |。 总长度不超过 900 行代码 + 400 字说明。 【约束与优先级】 - 硬性:不得引入需要联网安装的依赖;不得改变对外输出格式;不得删除原有异常分支。 - 偏好:优先用标准库;优先用生成器/流式处理替代一次性读入。 - 冲突时:兼容性 > 性能 > 代码简洁度。 【信息不足时】 若 {{遗留脚本}} 为空或无法判断语言,先只输出「我需要确认的三件事」(语言与版本、输入数据规模、对外输出契约),不要臆测代码。 若 {{硬约束}} 为空,默认按「保持 CLI 与输出格式不变」处理,并在开头用一行声明该假设。
还有 3 个必填变量未填,补齐后才能复制
还有 3 个变量没填。照样能跑——缺失的部分会按常见情况假设,并标注在成品末尾。
AI 评审依据
这条提示词还没有评审记录
- 目标模型
- ChatGPT、Claude
- 框架
- CRISPE
- 语言
- zh-CN
- 作者
- 站方
标签
- python
- 性能优化
- 基准测试
- 遗留代码
- 重构
同类提示词
构建脚本 / 自动化流程的提速改造(CI 与本地双场景)
97AI 质量分针对 CI 或本地构建脚本,输出可运行的并行化改造脚本、缓存策略脚本与耗时对比报告,直接替换现有流程。
脚本代码进阶BROKE免费
AI 生成站方 · 复制 0 次