如果发出信号(pthread_cond_signal, pthread_cond_broadcast)时,没有线程在条件变量的wait 中等待,则这个信号丢失,其他线程走到wait时,投入睡眠状态。 此处可以增加一个x,广播中其值取线程数,线程里判断如果其值为0,则等待,否则对其减一,表示收到。 因 ...
分类:
编程语言 时间:
2016-09-17 20:31:03
阅读次数:
186
原文出处: 后端技术杂谈 1. 将一些需要变动的配置写在属性文件中 比如,没有把一些需要并发执行时使用的线程数设置成可在属性文件中配置。那么你的程序无论在DEV环境中,还是TEST环境中,都可以顺畅无阻地运行,但是一旦部署在PROD上,把它作为多线程程序处理更大的数据集时,就会抛出IOExcepti ...
分类:
编程语言 时间:
2016-09-14 09:40:17
阅读次数:
159
1.查看cpu # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 #物理cpu个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| w ...
分类:
系统相关 时间:
2016-09-13 22:12:33
阅读次数:
184
介绍 sysbench是一个模块化、跨平台、多线程基准测试工具,主要用于测试不同系统参数下的数据库负载情况,本文主要介绍0.4版本的使用。sysbench主要用于以下性能测试: 文件I/O性能 调度 内存分配和传输 POSIX线程 数据库 安装 1.安装插件 yum install libtool ...
分类:
其他好文 时间:
2016-09-12 20:43:23
阅读次数:
171
处理任务队列的工作线程的创建 工作线程的数量和CPU数量是息息相关的,CPU数量越多则可以创建越多的工作线程数量。 var si: TSystemInfo; GetSystemInfo(si); g_decode_handle := CreateIoCompletionPort(INVALID_HA ...
分类:
编程语言 时间:
2016-09-12 14:13:09
阅读次数:
123
一、Linux服务器性能关注点 1)CPU -> load:表示cpu在一段时间内正在处理以及等待处理的任务之和统计信息,简单可理解为cpu正处理的线程数和能同时处理的线程数的比值。一般认为load值的安全上限为cpu的个数 -> run queue:表示cpu维护的线程运行队列。在多核系统中,每个 ...
分类:
系统相关 时间:
2016-09-08 19:57:37
阅读次数:
172
线程池(Thread Pool)对于限制应用程序中同一时刻运行的线程数很有用。因为每启动一个新线程都会有相应的性能开销,每个线程都需要给栈分配一些内存等等。 我们可以把并发执行的任务传递给一个线程池,来替代为每个并发执行的任务都启动一个新的线程。只要池里有空闲的线程,任务就会分配给一个线程执行。在线 ...
分类:
编程语言 时间:
2016-09-07 18:59:27
阅读次数:
142
防伪码:锲而舍之,朽木不折;锲而不舍,金石可镂第三章、MySQL数据库系统目前,比较主流的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是自由或开放源码软件..
分类:
数据库 时间:
2016-09-07 16:06:14
阅读次数:
308
现在有这样的一个场景: 1、连续发10个相同的请求 2、其中前两个做特殊处理 连续复制10个请求(不是增加线程数),将其中两个做处理 这时候我们就需要用到Jmeter的逻辑控制器,Jmeter的逻辑控制器有很多,我们介绍一些常用的的逻辑控制器。 Logic Controller逻辑控制器 1、首先必 ...
分类:
其他好文 时间:
2016-09-07 12:32:36
阅读次数:
284
初学Jmeter,以下是我常用的功能,总结一下。 1、Thread Group线程组 线程组,即:虚拟用户组 名称:随意起啦,自己喜欢就好。 线程数:设置虚拟用户数。 Ramp-Up Period(in seconds):设置时间,即:在此段时间内创建出你所设置的所有虚拟用户数。 循环次数:1个线程 ...
分类:
其他好文 时间:
2016-09-04 16:02:03
阅读次数:
206