全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页

线上性能监控与压测优化专项测试

20 题 45 分钟 难度:

考察知识点

  • Actuator监控端点配置
  • JVM性能调优参数
  • 压测方法论与工具使用
  • 性能瓶颈定位与优化策略
1
单选题

在Spring Boot Actuator中,以下哪个端点用于查看应用的核心指标信息,如JVM内存、CPU使用率等?

A

/actuator/health

B

/actuator/metrics

C

/actuator/info

D

/actuator/env

2
单选题

在Spring Boot应用中集成Prometheus监控时,需要添加哪个依赖并配置什么内容才能正确暴露Prometheus格式的指标?

A

添加micrometer-core依赖,配置management.endpoints.web.exposure.include=prometheus

B

添加micrometer-registry-prometheus依赖,配置management.endpoints.web.exposure.include=prometheus

C

添加spring-boot-starter-actuator依赖,配置management.metrics.export.prometheus.enabled=true

D

添加prometheus-client依赖,配置management.endpoint.prometheus.enabled=true

3
单选题

在Micrometer指标体系中,用于统计HTTP请求响应时间分布的指标类型是什么?该类型指标会自动计算哪些统计数据?

A

Counter,统计请求总数

B

Gauge,统计当前值

C

Timer,统计调用次数、总耗时、最大耗时和百分位分布

D

DistributionSummary,统计请求大小分布

4
多选题

在构建Spring Boot应用的监控指标体系时,以下哪些指标对于评估系统健康状态和性能瓶颈至关重要?

A

JVM堆内存使用量和GC频率

B

CPU使用率和系统负载

C

数据库连接池活跃连接数和等待队列长度

D

HTTP请求响应时间百分位值(P95、P99)

E

应用启动时间戳

F

线程池活跃线程数和队列任务数

5
多选题

在Micrometer指标体系中,合理使用标签(Tags)可以实现多维度监控分析。以下哪些是标签设计的最佳实践?

A

为每个指标添加有意义的业务维度标签,如接口路径、HTTP方法、状态码

B

使用高基数(cardinality)标签值,如用户ID、请求ID等唯一标识

C

限制标签值的可选范围,避免标签组合爆炸

D

使用统一的标签命名规范,如小写字母加下划线

E

避免在标签中包含敏感信息,如密码、token

F

为所有指标添加应用名称、实例IP等公共标签

6
判断题

在Micrometer中,MeterRegistry是指标注册中心,负责创建和管理各种Meter(Counter、Gauge、Timer等),每个Spring Boot应用通常只需要一个MeterRegistry实例。

A

B

7
判断题

Spring Boot Actuator的metrics端点采用拉取式(Pull)模式获取指标数据,这种模式相比于推送式(Push)模式,更适合云原生环境下的服务发现和动态伸缩场景。

A

B

8
单选题

以下哪种压测工具最适合用于对Spring Boot应用进行HTTP接口层面的压力测试,能够模拟大量并发用户请求?

A

JUnit

B

JMeter

C

Mockito

D

SonarQube

9
单选题

在JMeter中进行压力测试时,如果需要模拟1000个并发用户在10秒内逐渐启动并发起请求,应该配置哪种线程组?具体参数如何设置?

A

普通线程组:线程数=1000,Ramp-Up Period=10

B

普通线程组:线程数=1000,Ramp-Up Period=1,循环次数=10

C

Stepping Thread Group:初始线程=100,增量=100,间隔=1秒

D

Ultimate Thread Group:起始线程=1000,延迟=10秒

10
单选题

使用wrk工具对Spring Boot接口进行压测时,以下哪个命令可以模拟12个线程、400个连接、持续30秒的压力测试?

A

wrk -t12 -c400 -d30s http://localhost:8080/api/test

B

wrk --threads=12 --connections=400 --duration=30 http://localhost:8080/api/test

C

wrk -t 12 -c 400 -d 30 http://localhost:8080/api/test

D

wrk -T12 -C400 -D30s http://localhost:8080/api/test

11
多选题

在对Spring Boot应用进行压力测试前,以下哪些准备工作是必要的?

A

确保测试环境与生产环境配置一致或相近

B

准备足够的测试数据,避免数据量不足导致缓存命中率异常

C

关闭所有日志输出,避免IO影响测试结果

D

配置监控工具收集压测期间的系统指标

E

预热应用,让JIT编译器完成热点代码优化

F

确保网络环境稳定,避免网络延迟干扰测试

12
多选题

在Spring Boot应用的性能测试中,以下关于压测工具选择的描述哪些是正确的?

A

JMeter适合复杂的业务场景测试,支持脚本编程和多种协议

B

wrk适合快速验证接口性能,单机支持高并发HTTP测试

C

Gatling基于Scala,适合编写复杂的压测脚本,性能优异

D

ab(Apache Bench)功能强大,适合长期运行的压测场景

E

Locust基于Python,适合分布式压测和可编程场景

F

所有压测工具都支持生成HTML格式的测试报告

13
判断题

在压力测试中,TPS(Transactions Per Second)和QPS(Queries Per Second)都是衡量系统吞吐量的重要指标。对于单个HTTP接口而言,TPS等于QPS。

A

B

14
判断题

在进行压力测试时,单次测试结果就可以代表系统的真实性能水平,无需进行多次重复测试取平均值。

A

B

15
单选题

在Spring Boot应用压测过程中发现CPU使用率持续达到90%以上,但系统吞吐量没有相应提升,这种现象最可能说明什么问题?

A

应用存在频繁的CPU密集型计算,如复杂算法或死循环

B

CPU线程调度开销过大,应用线程过多导致频繁上下文切换

C

系统IO等待过高,CPU处于等待状态而非真正计算

D

JVM垃圾回收频繁,GC线程占用大量CPU资源

16
单选题

在压测过程中发现部分请求返回异常,通过日志发现线程池抛出RejectedExecutionException。分析线程池配置后发现:核心线程数=10,最大线程数=20,队列容量=100,任务处理耗时=500ms。请问在高并发场景下,如何优化线程池配置以避免拒绝异常?

A

增大队列容量到1000,让更多任务排队等待

B

将核心线程数调整为最大线程数,即core=max,避免队列等待

C

使用CallerRunsPolicy拒绝策略,让提交任务的线程执行任务

D

以上方案都不合理,应该根据系统资源重新设计整体架构

17
单选题

在Spring Boot应用压测过程中,发现系统响应时间出现周期性抖动,每隔几分钟会有大量请求延迟飙升到数秒。通过监控发现老年代使用率快速上升并触发Full GC。以下哪种优化方案可以最有效地缓解这个问题?

A

增加年轻代大小,减少对象晋升到老年代的速度

B

将垃圾收集器从CMS改为G1GC,降低Full GC停顿时间

C

减少堆内存大小,让GC更频繁但停顿更短

D

使用-XX:+DisableExplicitGC禁用显式GC调用

18
单选题

在Spring Boot应用压测中,发现数据库查询接口的响应时间P99值远高于平均值,通过分析发现存在慢SQL导致请求延迟。以下哪种方法可以最快速定位具体的慢SQL?

A

在Spring Boot中配置logging.level.org.springframework.jdbc=DEBUG查看SQL执行日志

B

开启数据库慢查询日志,设置long_query_time阈值记录慢SQL

C

使用Actuator的/actuator/metrics端点查看jdbc相关指标

D

在代码中使用JdbcTemplate的query方法手动打印SQL执行时间

19
多选题

在Spring Boot应用性能瓶颈分析中,以下哪些是需要重点关注的瓶颈点?

A

JVM内存分配不合理导致频繁GC停顿

B

数据库连接池耗尽导致请求等待或超时

C

HTTP连接池配置不当导致连接复用效率低

D

代码中存在N+1查询问题导致数据库压力过大

E

日志框架使用异步日志导致性能下降

F

线程池配置不当导致任务堆积或拒绝

20
多选题

在Spring Boot应用性能问题排查中,以下哪些APM(Application Performance Monitoring)工具可以提供链路追踪和性能分析功能?

A

SkyWalking - 国产开源APM,支持Java应用链路追踪

B

Zipkin - Twitter开源分布式追踪系统

C

Prometheus - 指标监控和告警系统

D

Jaeger - Uber开源分布式追踪系统

E

ELK Stack - 日志收集和分析平台

F

Pinpoint - 韩国开源APM,可视化服务拓扑

← 上一个试卷 核心配置文件使用专项测试
下一个试卷 → 自动配置原理专项测试

📝 发现内容有误?点击此处直接编辑

想参加完整模拟考试?
小程序提供计时考试、自动评分和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库