性能优化
文章平均质量分 57
不一样的程序员
纸上得来终觉浅,绝知此事要躬行
展开
-
架构师之路2017半年精选40篇
【通用设计与方法论】 《 单KEY业务,数据库水平切分架构实践 》 《架构设计中常见“反向依赖”与解耦方案》《互联网架构如何转载 2017-08-29 12:05:36 · 815 阅读 · 0 评论 -
MySQL优化策略
背景最近接到一个任务,是写一些接口提供给供应商,主要包括Topsale,销售业绩,PK接口的任务。说简单点,就是根据提供的活动ID,去活动配置对应的表中查询对应的条件参数,然后根据条件参数查出对应的CRM,IPOS,等库(表)中,查出对应的统计数据,比如店员之间的业务pk。简单的流程图如下所示:现在以查询店铺入会率PK为例,sql如下所示:select t.shopNumb原创 2018-01-25 20:11:01 · 431 阅读 · 0 评论 -
Tomcat能够稳定支持的最大用户并发数
服务器配置: 单硬盘,SATA 8MB缓存 测试服务器和loadrunner运行服务器位于同一网段–100MB网络(同一交换机)上,排除网络问题的影响 服务器运行始终,CPU使用率非常低没有超过5% 因此虽然服务器配置低,但是不是性能瓶颈所在 服务器运行在windowsserver 2003 sp2中文版(正版系统)转载 2018-01-27 22:10:11 · 31289 阅读 · 1 评论 -
一次JVM性能调优记录
前言填别人留下来的坑其实挺无奈的,会被搞的特别烦,特别是我这种要填三四个人留下来的坑的时候,满满的都是无奈。幸好的是填坑也可以选择一种更能提升自己的方式来填。这次遇到的一个程序,是一个从kafka消费并且插入mysql的程序,该程序历经三人之手,频频出问题,一直没有被解决。传到现...转载 2018-02-22 22:07:23 · 344 阅读 · 0 评论 -
linux 性能瓶颈排查
背景作为开发人员,肯定遇到过以下场景,应用突然卡住了,或者异常退出,cpu占用过高等各种异常情况,一般遇到这些异常情况,该如何去查找具体原因呢? linux和jdk提供了一些命令和工具来查看内存、cpu、网络等数据。我们统称这些情况成为性能瓶颈,常见的性能瓶颈主要包括以下分类:内存瓶颈cpu瓶颈网络瓶颈磁盘瓶颈应用瓶颈下面分别介绍各种瓶颈的排查命令和工具内存瓶颈...原创 2018-02-24 17:59:27 · 7237 阅读 · 0 评论 -
如何避免内存泄漏、溢出的几种常用方法
尽早释放无用对象的引用。好的办法是使用临时变量的时候,让引用变量在退出活动域后自动设置为null,暗示垃圾收集器来收集该对象,防止发生内存泄露。程序进行字符串处理时,尽量避免使用String,而应使用StringBuffer。因为每一个String对象都会独立占用内存一块区域,如:String str = "aaa"; String str2 = "bbb"; ...原创 2017-09-20 16:39:48 · 5611 阅读 · 0 评论 -
jstack简单使用,定位死循环、线程阻塞、死锁等问题
阅读目录死循环 Object.wait()情况 死锁 等待IO 其它 当我们运行java程序时,发现程序不动,但又不知道是哪里出问题时,可以使用JDK自带的jstack工具去定位;废话不说,直接上例子吧,在window平台上的;死循环写个死循环的程序如下:package concurrency;public class Test { pub...转载 2018-03-13 17:43:30 · 400 阅读 · 0 评论 -
GC 技术解析
介绍 G1 GC,全称Garbage-First Garbage Collector,通过-XX:+UseG1GC参数来启用。G1收集器是工作在堆内不同分区上的收集器,分区既可以是年轻代也可以是老年代,同一个代的分区不需要连续。并且每个代分区的数量是可...转载 2018-06-20 10:39:45 · 2068 阅读 · 0 评论 -
lock wait timeout exceeded; try restarting transactio解决方案
问题原因: 今天线上环境,突然出现一个问题,追踪原因是数据库中的一条语句报错,错误内容: lock wait timeout exceeded; try restarting transactio 执行upda...原创 2018-07-05 20:31:21 · 4590 阅读 · 1 评论