当前位置: 首页 > wzjs >正文

毕业设计代做网站机械站牛网是做什么的

毕业设计代做网站机械,站牛网是做什么的,电销网站建设,手机网站设计规格接上篇文章, 拿SpringBoot举个例 1.1 默认线程池的隐患 Spring Boot的Async默认使用SimpleAsyncTaskExecutor(无复用线程),频繁创建/销毁线程易引发性能问题。 1.2 自定义线程池配置 Configuration EnableAsync public class A…

接上篇文章, 拿SpringBoot举个例

1.1 默认线程池的隐患
Spring Boot的@Async默认使用SimpleAsyncTaskExecutor(无复用线程),频繁创建/销毁线程易引发性能问题。
1.2 自定义线程池配置
@Configuration
@EnableAsync
public class AsyncConfig implements AsyncConfigurer {@Overridepublic Executor getAsyncExecutor() {ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();executor.setCorePoolSize(10);          // 核心线程数=CPU核心数×2executor.setMaxPoolSize(20);           // 突发流量缓冲executor.setQueueCapacity(100);        // 根据业务容忍延迟调整executor.setThreadNamePrefix("Async-");executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());executor.initialize();return executor;}
}// 使用示例
@Service
public class ReportService {@Async  // 指定使用自定义线程池public CompletableFuture<Report> generateReportAsync(Long id) {// 模拟耗时操作Thread.sleep(2000);return CompletableFuture.completedFuture(new Report(id, "Done"));}
}
1.3 线程池监控(Micrometer + Prometheus)
# application.yml
management:endpoints:web:exposure:include: "metrics,prometheus"metrics:tags:application: ${spring.application.name}
@Bean
public MeterBinder threadPoolMetrics(ThreadPoolTaskExecutor executor) {return registry -> {Gauge.builder("thread.pool.active", executor, ThreadPoolTaskExecutor::getActiveCount).description("当前活跃线程数").register(registry);Gauge.builder("thread.pool.queue.size", executor, e -> e.getThreadPoolExecutor().getQueue().size()).description("任务队列长度").register(registry);};
}

通过http://localhost:8080/actuator/prometheus可获取实时指标。

二、Spring Boot内存泄漏排查:一个真实OOM案例

2.1 故障现象

  • 应用运行24小时后出现java.lang.OutOfMemoryError: Java heap space

  • GC日志显示老年代占用持续增长

2.2 诊断步骤
步骤1:生成堆转储文件

# 在应用启动命令中添加
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/heapdump.hprof

步骤2:使用MAT分析

  1. 打开heapdump.hprof,选择Dominator Tree

  2. 发现ConcurrentHashMap$Node[]占用80%内存

  3. 查看引用链,定位到缓存工具类未清理过期数据

步骤3:代码修复

// 错误代码:静态Map无限增长
public class CacheManager {private static Map<String, Object> cache = new ConcurrentHashMap<>();public static void put(String key, Object value) {cache.put(key, value);}
}// 修复:引入Guava Cache自动过期
public class CacheManager {private static LoadingCache<String, Object> cache = CacheBuilder.newBuilder().maximumSize(1000).expireAfterWrite(10, TimeUnit.MINUTES).build(new CacheLoader<>() {@Overridepublic Object load(String key) {return loadFromDB(key);}});
}
三、Spring Data JPA连接池优化(HikariCP实战)

3.1 默认配置风险
Spring Boot默认使用HikariCP,但以下参数需针对性调整:

spring:datasource:hikari:maximum-pool-size: 20          # 默认10,根据DB并发能力调整connection-timeout: 3000       # 获取连接超时时间(ms)idle-timeout: 600000           # 空闲连接存活时间(默认10分钟)max-lifetime: 1800000          # 连接最大生命周期(默认30分钟)leak-detection-threshold: 5000 # 连接泄漏检测阈值(生产环境建议开启)

3.2 监控集成

@Bean
public MeterBinder hikariMetrics(HikariDataSource dataSource) {return registry -> {HikariPoolMXBean pool = dataSource.getHikariPoolMXBean();Gauge.builder("db.pool.active", pool::getActiveConnections).register(registry);Gauge.builder("db.pool.idle", pool::getIdleConnections).register(registry);Gauge.builder("db.pool.total", pool::getTotalConnections).register(registry);};
}
四、生产级Spring Boot JVM参数模板

4.1 基础参数(JDK11+)

java -jar your-app.jar \-Xms2g -Xmx2g                 # 堆内存固定,避免动态调整开销 \-XX:MaxMetaspaceSize=256m     # 防止元空间膨胀 \-XX:+UseG1GC                  # 低延迟垃圾回收器 \-XX:MaxGCPauseMillis=200      # 目标最大停顿时间 \-Xlog:gc*,gc+heap=debug:file=gc.log:time,uptime:filecount=5,filesize=100m \-Dspring.profiles.active=prod

4.2 容器环境适配(Dfile.encoding警告修复)

FROM eclipse-temurin:17-jdk
ENV LANG C.UTF-8
ENV JAVA_OPTS="-Dfile.encoding=UTF-8"
五、实战:利用Arthas在线诊断Spring Boot应用

5.1 安装与附加进程

curl -O https://arthas.aliyun.com/arthas-boot.jar
java -jar arthas-boot.jar  # 选择目标进程

5.2 常用命令

# 1. 查看实时线程状态
thread -n 3                 # 显示CPU占用最高的3个线程# 2. 监控方法调用耗时
watch com.example.service.*Service * '{params, returnObj}' -x 3 # 3. 动态修改日志级别(无需重启)
logger --name ROOT --level debug

 

http://www.dtcms.com/wzjs/441461.html

相关文章:

  • 网站建设时图片和文字百度知道提问
  • 网站建设网站建设哪里有免费发布产品的网站
  • 网站的建设方式吉林黄页电话查询
  • 公众号制作135网站如何优化
  • 刷信誉网站制作上海知名网站制作公司
  • 名词解释 网站内容免费网页制作模板
  • 东莞市领导班子深圳seo优化公司搜索引擎优化方案
  • 深圳市建设科技促进中心网站百度上做推广怎么做
  • 教学成果奖网站建设信息检索关键词提取方法
  • wordpress多語言主頁宁波seo服务快速推广
  • 可以做设计兼职的网站有哪些工作查企业信息查询平台
  • 嘉兴营销型网站东莞seo建站排名
  • 网页制作和网站建设发广告去哪个平台
  • 中国互联网百强企业排名优化网站打开速度
  • 漳州做网站的公司第三波疫情将全面大爆发
  • 昆山网站建设公司怎么样网站建设一般多少钱
  • 朝阳市营商环境建设监督局网站培训计划方案模板
  • 在线制作仿真证件生成器淄博网站优化
  • 重庆市住房城乡建设委员会网站网站产品推广
  • 广告设计公司相城黄埭合肥seo整站优化网站
  • 六安做网站公司互联网营销专业
  • 低价网站建设渠道不用流量的地图导航软件
  • 有关做有机肥的企业网站优化手机性能的软件
  • 建站公司人员配置百度seo快速排名
  • 便宜的网站建设学企业管理培训班
  • 网站规划与建设大作业答案平面设计主要做什么
  • 如何做镜像网站专业外贸网络推广
  • 网站ftp做网站的会给嘛口碑营销5t理论
  • 网站建设十年杜绝模板网络营销企业有哪些公司
  • 全部网站seo从零开始到精通200讲解