生产环境性能优化
文章平均质量分 88
针对生产环境的各种性能优化
鮀城小帅
在工作中一步步学习、进步,充实工作也充实生活。
展开
-
Java生产环境下性能监控与调优详解(七)JVM层GC调优
主要内容JVM的内存结构 垃圾回收算法 垃圾收集器 可视化GC日志分析工具 Tomcat的GC调优实战1.JVM的内存结构1.1 运行时数据区,主要包括以下部分(1)程序计数器PC RegisterJVM支持多线程同时运行,每一个线程都有自己的PC Register,线程正在执行的方法叫做当前方法,如果是java代码,PC Register里面存放的就是正在执行的指令的地址,如果是C代码,则为空。(2)虚拟机栈JVM StacksJava虚拟机栈(Java Virtua原创 2021-04-30 17:57:56 · 597 阅读 · 1 评论 -
Java生产环境下性能监控与调优详解(六)Nginx性能监控与调优
内容:nginx安装 ngx_http_stub_status监控连接信息 ngxtop监控请求信息 nginx-rrd图形化监控1.Nginx安装略过2.ngx_http_stub_status监控连接信息2.1 ngx_http_stub_status配置(1)添加配置 location = /nginx_status{ stub_status on; access_log off; allow 127.0.原创 2021-04-30 17:38:16 · 355 阅读 · 6 评论 -
Java生产环境下性能监控与调优详解(五)Tomcat性能监控与调优
1.tomcat远程debug1.1 主要内容tomcat远程debug tomcat-manager监控 psi-probe监控 tomcat调优2. JDWP2.1 定义原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-jpda3/index.htmlJDWP 是 Java Debug Wire Protocol 的缩写,它定义了调试器(debugger)和被调试的 Java 虚拟机(target vm)之间的通信协议。原创 2021-04-30 17:30:09 · 268 阅读 · 0 评论 -
Java生产环境下性能监控与调优详解(四)基于Btrace的监控调试
1.主要内容Btrace安装入门 Btrace使用详解2.Btrace入门2.1 Btrace 简介BTrace可以动态地向目标应用程序的字节码注入追踪代码 JavaComplierApi、JVMTI、Agent、Instrumentation+ASM原创 2021-04-30 17:16:27 · 272 阅读 · 1 评论 -
Java生产环境下性能监控与调优详解(三)基于JVisualVM的可视化监控
1.主要内容监控本地Tomcat 监控远程Tomcat 监控普通的JAVA进程2.JVisualVM2.1 本地打开 JVisualVM该工具是JDK自带的,直接在 jdk/bin/ 目录下找到 jvisualvm.exe 双击打开即可。2.2 功能该工具默认会将本机的java进程给列出来2.3 对每个java进程的功能页面2.4 JVM、系统参数注意: JetBrains 的 IDEA 进程系统属性不受JVisualVM支持。这里的系统参数是展示的原创 2021-04-30 17:04:47 · 401 阅读 · 0 评论 -
Java生产环境下性能监控与调优详解(一)大纲
生产环境发生了内存溢出该如何处理? 生产环境应该给服务器分配多少内存合适? 如何对垃圾收集器的性能进行调优? 生产环境CPU负载飙高该如何处理? 生产环境应该给应用分配多少线程合适? 不加log如何确定请求是否执行了某一行代码? 不加log如何实时查看某个方法的入参与返回值? JVM的字节码是什么东西? 循环体中做字符串++拼接为什么效率低? ...原创 2021-04-30 16:44:12 · 219 阅读 · 0 评论 -
Java生产环境下性能监控与调优详解(二)基于JDK命令行工具的监控
主要内容:JVM参数类型 查看运行时JVM参数 查看JVM统计信息 jmap + MAT 实战内存溢出 jstack实战死循环与死锁1.JVM参数类型1.1 参数分类:标准参数 X参数 XX参数1.2 标准参数常用标准参数如下:-help server -clien -version -showversion -cp -classpath...原创 2021-04-30 16:43:34 · 515 阅读 · 1 评论 -
Java高并发秒杀高并发优化
1、秒杀优化原因:(1)无法使用CDN缓存,其只针对核心数据做缓存(2)在后端库存操作中,不能在缓存中减库存,极短时间内不同用户的缓存数据不同,变化大,容易造成超量(3)某一个热点商品被同一时间由多人竞争时会产生大量的update操作,DB效率及错误率需要优化2、使用redis/NoSQL的数据验真,将逻辑操作解析等校验后调用MQ进行解耦,发送消息队列,或调用MQ的异步操作提...原创 2019-08-07 14:46:49 · 414 阅读 · 0 评论