- 博客(6)
- 问答 (1)
- 收藏
- 关注
原创 TIME_WAIT问题彻底分析
在性能测试中,经常会遇到TIME_WAIT过多的问题,这个问题会导致本地端口用满(Linux下默认是65535),从而导致无法创建新的TCP链接,进而无法发出http请求。在Linux系统中,我们可以使用netstat -nlatp | grep TIME_WAIT | wc -l来统计目前TIME_WAIT的总数量。如果该指标随着时间的增加而不断增加,并且没有减少的迹象,那么就有可能出现TI...
2020-02-05 16:29:21
558
原创 Tensorflow在容器性能测试中的问题
Docker是利用Linux操作系统自带的namespace实现资源的隔离,利用cgroup实现资源的限制。虽然Docker针对Linux硬件资源做了限制,但是当类似于java、python这样的语言,调用一些系统内核数据时,使用的仍然会是未进行隔离之前的数据。在使用容器方式部署Tensorflow时,有两个限制线程数量的参数,即inter_op_parallelism_threads和int...
2020-02-04 23:09:52
381
原创 sql语句中在做精确查找时,使用"="和使用"like"符合的区别
最近使用sql语句的时候发现,在对表进行精确查找时,使用"="和使用"like"的执行计划不同,并且性能上也有较大差距,使用"like"的查询开销是使用"="的8-9倍左右,于是对该问题进行了研究。在精确查找时,使用like和使用=,所采用的的算法是不相同的。使用like,会对字符进行逐个比较;而使用=,则会采用一些优化的算法,比如首先比较字符个数是否相同,如果字符不相同就不再向下比较了。因此...
2019-04-29 23:10:35
4615
原创 Tomcat中,前缀名为catalina-exec的是什么线程
在对使用tomcat容器进行线程观察的时候,我们发现,如果我们的web应用正在运行,那么会有许多的catalina-exec线程,这些线程是真正执行springmvc应用中servlet的线程。那么catalina-exec线程来自哪里呢?通过观察tomcat源码我们可以知道,在service组件内部,初始化的时候回预先建立一堆线程,线程的前缀名和大小数量可以在server.xml文件中进行配...
2019-04-29 22:59:58
3128
原创 Jmeter Beanshell java代码无法写入方法
最近在利用Jmeter进行性能测试时发现,一旦Jmeter Beanshell的脚本里面写入java方法的话,那么Jmeter测试脚本运行后就会出现memory leak的问题,无法进行gc,经过一段时间运行后就会出现out of memory的问题。目前正在研究jmeter源代码,查看关于beanshell运行java代码的原理,希望可以写出一个插件改善这一问题,毕竟在beanshell里面写入...
2018-03-31 22:57:22
867
原创 求一个整数的质因数的代码(核心部分)
public String getResult(long n){long k=2; ArrayList array = new ArrayList ();while(n!=k){if(n%k==0){n= n/k;array .add(k);}if(n%k != 0){k = k+1;}} array .add(k);
2016-03-19 15:38:25
448
空空如也
高并发下数据库服务器CPU使用率问题
2017-07-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人