遇见数据集

MicroPerf-Bench

收藏
arXiv2026-10-21 更新2026-10-23 收录
数据链接:
官方服务:

资源简介:

MicroPerf-Bench 是面向微服务系统端到端性能优化的编码智能体评测基准,由澳门大学信息科学与计算学院构建。其涵盖 7 个真实开源微服务系统、9 类性能反模式,共 65 个优化实例,每个实例均含可执行多容器环境、功能测试和混合工作负载评测脚本。数据集通过受控注入构建:先清洗原始系统基线,再保持 API 契约与功能完整并注入可测量退化,最后进行污染消解。该基准旨在评估智能体跨服务定位瓶颈、生成合规补丁并恢复端到端性能的能力,揭示当前智能体在系统级优化中的关键短板。

创建时间:
2026-10-21
原始信息汇总

MicroPerf 数据集概述

基本信息

  • 数据集详情页:https://github.com/zyzcjnb/microperf
  • 名称:MicroPerf: A Benchmark for Agent-Driven Microservice Performance Optimization
  • 目标:评估基于 LLM 的编码代理发现并修复注入到微服务系统中的性能反模式的能力。
  • 实例形态:每个实例是自包含、Docker 化的微服务应用,包含一个或多个注入的反模式。
  • 注入反模式示例:chatty communication、nano-service splitting、hub topologies、shared-database serialization、cache misuse。

仓库布局

  • repo/strong-base/:每个系统的最强原始版本,作为优化目标参考。
  • repo/instances/:65 个注入实例,覆盖 7 个微服务系统;另有 5 个未修改原始版本作为参考。
  • scripts/:每个系统的工作负载辅助脚本。
    • benchmark.sh
    • register_movies_for_compose.py
  • agents/:代理集成占位符。
  • perf_test.sh:性能流水线,每个目标 3 次运行,面向 social-network。
  • perf_test-petclinic.sh:性能流水线,10 线程 × 3 次运行,JMeter,用于 spring-petclinic-micro。
  • test_plan.jmx:JMeter 工作负载计划,用于 spring-petclinic-micro,已中和主机/端口变量。
  • clean_instance.sh
  • run-benchmark.sh:批量驱动,命令为 ./run-benchmark.sh [run_name]。
  • results/:性能输出,被 gitignore。

实例构成

系统 注入实例数 原始参考 技术栈与工作负载
hotel 10 1 Go + MongoDB/memcached,wrk2 混合负载
media 7 1 C++ Thrift + memcached/MongoDB,wrk2 compose-review
martian-bank-demo 8 1 Python/Node.js,locust 混合负载
robot-shop 10 1 polyglot,locust 浏览器风格负载
pitstop 10 1 .NET + RabbitMQ/SQL Server,自定义基准测试工具
social 11 无 DeathStarBench social-network,混合负载
spring-petclinic-micro 9 无 Java Spring Cloud + HSQLDB/MySQL,JMeter 工作负载

命名规则

  • 在 hotel、media、martian-bank-demo、pitstop、robot-shop 中:
    • 无后缀变体是未修改原始版本,仅作参考,不计入上述注入实例数量。
    • 所有其他变体携带注入的反模式。
  • spring-petclinic-micro 代码名:
    • c1 = chain
    • c2 = chatty
    • c2p = chatty-pro
    • n = nano
    • s = shared-persistence
    • l = long-chain
    • 组合后缀如 -ns、-nsc2p 表示堆叠多个反模式。
  • 其他系统遵循各自目录中记录的命名方式。

备注

  • 这些系统派生自公共开源微服务基准;请参考各自上游项目获取其许可证。
二维码
社区交流群
二维码
科研交流群
商业服务