1、当压力加大时,TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈。解析:tps 曲线为什么会变平坦?因为系统处理事务的线程数往往是固定的一个数值。(一般是由程序设定或者服务器配置决定),假设响应时间是固定的一个值时,那么每秒 中系统能够处理的事务数是固定的数值。不会因为压力的增...
分类:
其他好文 时间:
2015-08-01 11:17:06
阅读次数:
112
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数# 查看物理CPU个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l# 查看每个物理CPU中cor...
分类:
系统相关 时间:
2015-07-31 23:28:34
阅读次数:
214
在使用JAVA提供的Socket的IO方法时,服务端为了方便操作,会为每一个连接新建一个线程,一个线程处理一个客户端的数据交互。但是当大量客户端同服务端连接时,会创建大量的线程,线程之间的切换会严重影响服务端性能,并且有时每一个的线程寿命并不长,有的甚至很短。影响服务端性能的根本原因就是线程数量过多...
分类:
编程语言 时间:
2015-07-30 23:06:25
阅读次数:
129
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理CPU中...
分类:
系统相关 时间:
2015-07-28 18:02:26
阅读次数:
270
在开发中遇到过这样的需求,主线程中开启多个子线程来处理数据以提高效率,待所有的子线程执行完成任务后,主线程继续完成后续的操作。一番思考后,思路出来了,我的做法是定义一个全局整型的静态变量,每个子线程完成任务后变量加1。主线程里有一个while死循环,每次循环判断这个变量的值,如果值为开启的线程数.....
分类:
编程语言 时间:
2015-07-28 12:47:43
阅读次数:
134
线程池的作用: 线程池作用就是限制系统中执行线程的数量。 根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果;少了浪费了系统资源,多了造成系统拥挤效率不高。用线程池控制线程数量,其他线程排队等候。一个任务执行完毕,再从队列的中取最前面的任务开始执行。 为什么要用线程池: 1.减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。2.可以根据系统的承受能...
分类:
编程语言 时间:
2015-07-27 21:07:19
阅读次数:
117
【当当、京东、天猫、亚马逊、新华书店等均有销售】目录第一部分:线程并发基础第1章概念部分11.1CPU核心数、线程数(主流cpu,线程数的大体情况说一下)11.2CPU时间片轮转机制21.3什么是进程和什么是线程41.4进程和线程的比较51.5什么是并行运行71.6什么是多并发运行81.7什么是..
分类:
编程语言 时间:
2015-07-27 16:53:11
阅读次数:
210
UItableView结合网络请求,多线程,数据解析,MVC实战学了这么久的swift都没有做过什么东西,今天就以自己的一个小小的联系,讲一下,怎么使用swift在实战中应用MVC,并且结合后面的高级知识:网络请求,JSON数据解析一起应用到一个项目中来。好了,废话不多说,我们直接开始吧。首先看看最...
分类:
移动开发 时间:
2015-07-25 22:45:22
阅读次数:
278
实现了一个简单的任务系统(Task Scheduler),用于多线程任务执行。由于编程上的疏忽,比实际的硬件线程多创建了一个线程用于执行任务。任务执行的部分,在Profiling工具里面,一直是耗时的部分。发现了这个问题之后,改正,整个执行时间几乎变为原来的一半。具体理论解释可以看这篇文章:http...
分类:
编程语言 时间:
2015-07-25 11:53:57
阅读次数:
137
Tomcat Connector的三种不同的运行模式性能相差很大,有人测试过的结果如下:
这三种模式的不同之处如下:
BIO:
一个线程处理一个请求。缺点:并发量高时,线程数较多,浪费资源。
Tomcat7或以下,在Linux系统中默认使用这种方式。
NIO:
利用Java的异步IO处理,可以通过少量的线程处理大量的请求。
Tomcat8在Li...
分类:
其他好文 时间:
2015-07-24 20:52:33
阅读次数:
159