1、环境: 系统:Windows、Linux Tomcat版本:9 2、编码与性能调优 server.xml文件: 参数说明: org.apache.coyote.http11.Http11NioProtocol:调整工作模式为Nio maxThreads:最大线程数,默认150。增大值避免队列请求 ...
分类:
其他好文 时间:
2018-09-19 16:10:43
阅读次数:
118
线程池是个好东西,最大线程数限制了服务无限制使用宝贵的操作系统线程,最大队列保护内存溢出,完美! 但是线程池使用不当也会导致死锁。这种死锁,要是不知道原理,死都不知道咋死的,并且非常难定位。大家知道,死锁一般都是由于资源征用引起的。而线程池引起的死锁,可能连个synchronize关键字都没有。连同 ...
分类:
编程语言 时间:
2018-08-12 00:31:55
阅读次数:
213
为什么用线程池? 创建线程需要较大的系统开销;可以有效的控制线程最大并发数;可以对线程进行一些简单的管理(例如:延时执行、定时循环执行的策略) 常见的四种线程池 fixThreadPool 有核心线程,固定的线程数量,响应的速度快。 caCheThreadPool 只有非核心线程,最大线程数很大(I ...
分类:
编程语言 时间:
2018-08-05 11:57:23
阅读次数:
151
使用 ThreadLocal 不当可能会导致内存泄露,是什么原因导致的内存泄漏呢? 我们首先看一个例子,代码如下: 代码(1)创建了一个核心线程数和最大线程数为 6 的线程池,这个保证了线程池里面随时都有 6 个线程在运行。 代码(2)创建了一个 ThreadLocal 的变量,泛型参数为 Loca ...
分类:
编程语言 时间:
2018-07-15 00:13:35
阅读次数:
210
1.修改DNS:Vim /etc/resolv.conf 2.系统的内核参数 cat /proc/sys/kernel/pid_max 这个值表示进程ID的上限 cat /proc/sys/kernel/threads-max系统允许的最大线程数 echo "kernel.pid_max=64000 ...
分类:
系统相关 时间:
2018-07-11 17:10:12
阅读次数:
169
ThreadPool空有1000个最大线程数,但实际上只能用略大于CPU个数的线程! ...
分类:
编程语言 时间:
2018-07-05 19:49:05
阅读次数:
638
ThreadPoolExecutor构造函数的各个参数说明 public ThreadPoolExecutor(int corePoolSize,//线程池中核心线程数 int maximumPoolSize,//允许的最大线程数 long keepAliveTime,//线程空闲下来后,存活的时间 ...
分类:
编程语言 时间:
2018-07-02 16:12:02
阅读次数:
310
线程的创建需要时间。如果存在多个任务需要完成,则可以事先创建许多线程,在应该完成任务时发出需求线程请求。线程数最好时动态的增加于减少。TheadPool类可以托管线程列表,这个类能动态增加于减少线程的线程数,直到最大线程数 可配置。在四核CPU中,默认为1023个工作线程和1000个I/O线程。也可 ...
分类:
编程语言 时间:
2018-06-29 22:27:15
阅读次数:
175
broker.id 唯一编号,每台不一样 host.name 本机host名称 num.network.threads 消息处理最大线程数,推荐cpu核数加1 num.io.threads 处理磁盘IO线程数,推荐cpu*2 socket.send.buffer.bytes=102400 #发送缓冲 ...
分类:
其他好文 时间:
2018-06-26 15:02:58
阅读次数:
129
查看线程数 ulimit -a 修改配置文件 vim /etc/security/limits.d/90-nproc.conf 改完即可生效 参考文献:https://www.cnblogs.com/jager/p/5776655.html ...
分类:
编程语言 时间:
2018-03-15 15:11:55
阅读次数:
162