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
线程池优势 在业务场景中, 如果一个对象创建销毁开销比较大, 那么此时建议池化对象进行管理. 例如线程, jdbc连接等等, 在高并发场景中, 如果可以复用之前销毁的对象, 那么系统效率将大大提升. 另外一个好处是可以设定池化对象的上限, 例如预防创建线程数量过多导致系统崩溃的场景. jdk中的线程 ...
分类:
编程语言 时间:
2018-06-25 20:29:06
阅读次数:
167
synchronized与Lock的区别synchronizedsynchronized是JVM中的关键字,加锁和释放锁都是通过JVM自动完成。说到这个点,就需要说明一下class和其instance在JVM的存储情况。class存储在持久层,并且会存储锁的信息。object实例存储在新生代或者老年代,同样其也存储了该实例对象的锁信息。class类锁publicclassUser{publicst
分类:
其他好文 时间:
2018-06-25 16:45:18
阅读次数:
143
linux下查看线程方法一、ps[root@iZtd8ajr022~]#ps-T-p30557PIDSPIDTTYTIMECMD3055730557?00:00:00nginx二、toptop-H-p<pid>附:查看tomcat进程号:ps-ef|greptomcat根据进程号查询对应的目录:/proc/pid/cwd、ls-la/proc/pid/fd根据目录查找对应的进程:lso
分类:
编程语言 时间:
2018-06-24 00:50:01
阅读次数:
227
电话面试太匆忙,惨不忍睹。。。。 1. 如何查看某个进程中的线程数 ps -T -p <pid> top -H -p <pid> 2. 如何查看单个进程I/O信息 vmstat 只能看磁盘 iotop 进程I/O pidstat /iotop 查看单个进程 3. 如何查看某个进程实时I/O网络信息 ...
分类:
其他好文 时间:
2018-06-23 20:46:12
阅读次数:
123
在蓝牙enable的过程中会进行多个线程的创建以及将线程与队列进行绑定的工作。该篇文章主要分析一下处理hci数据这个 线程。 ...
分类:
编程语言 时间:
2018-06-21 23:44:12
阅读次数:
357
一、控制服务端并发 限制 com.foo.BarService 的每个方法,服务器端并发执行(或占用线程池线程数)不能超过 10 个: 二、控制服务端并发(方法级别) 限制 com.foo.BarService 的 sayHello 方法,服务器端并发执行(或占用线程池线程数)不能超过 10 个: ...
分类:
其他好文 时间:
2018-06-18 23:48:08
阅读次数:
278
交织竞争条件在某时刻一个运行核心只有一个线程可以运行。 进程/线程采用OS提供的时间片特征来共享处理时间。当线程数多于处理器数量时,并发性通过时间片来模拟,处理器切换处理不同的线程。例子:时间片(其使用是不可预知的,非确定性的,意味着线程可能随时暂停或恢复) 三个线程T1 T2 T3可能在具有两个实 ...
分类:
其他好文 时间:
2018-06-18 17:17:02
阅读次数:
160
笔者所在公司最近上了一套系统,系统使用中间件连接Oracle数据库,使用一段时间之后系统就会停止响应。发现问题在于2点: 1. 中间件有线程执行了Delete语句之后,一直处于等待状态,没有COMMIT提交事务,对表施加了行锁且该线程无法复用(中间件总线程数有限制) 2. 对表施加了行锁之后,后续中 ...
分类:
数据库 时间:
2018-06-16 13:29:23
阅读次数:
1477
线程池的管理过程:首先创建一个线程池,然后根据任务的数量逐步将线程增大到corePoolSize,如果此时仍有任务增加,则放置到workQueue中,直到workQueue爆满为止,然后继续增加池中的线程数量(增强处理能力),最终达到maxinumPoolSize。那如果此时还有任务要增加进来呢?这 ...
分类:
编程语言 时间:
2018-06-15 13:17:31
阅读次数:
163