cpu参数

并发测试过程中,并发数量级设置

帅比萌擦擦* 提交于 2019-12-05 04:46:36
在做并发测试的时候,需要参考tomcat的maxThreads、acceptCount(最大线程数、最大排队数); tomcat 的Connector配置如下 <</span>Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads="800" acceptCount="1000"/> 其中最后两个参数意义如下: maxThreads :tomcat起动的最大线程数,即同时处理的任务个数,默认值为200 acceptCount :当tomcat起动的线程数达到最大时,接受排队的请求个数,默认值为100 这两个值如何起作用,请看下面三种情况 情况1:接受一个请求,此时tomcat起动的线程数没有到达maxThreads,tomcat会起动一个线程来处理此请求。 情况2:接受一个请求,此时tomcat起动的线程数已经到达maxThreads,tomcat会把此请求放入等待队列,等待空闲线程。 情况3:接受一个请求,此时tomcat起动的线程数已经到达maxThreads,等待队列中的请求个数也达到了acceptCount,此时tomcat会直接拒绝此次请求,返回connection refused maxThreads如何配置

快速查看linux 系统信息查看小命令

旧时模样 提交于 2019-12-05 04:07:27
一.查看CPU 1.1 查看CPU个数 ]# cat /proc/cpuinfo | grep "physical id" | uniq | wc -l uniq命令:删除重复行;wc –l命令:统计行数** 1.2 查看CPU核数 ]# cat /proc/cpuinfo | grep "cpu cores" | uniq cpu cores : 4 1.3 查看CPU型号 ]# cat /proc/cpuinfo | grep 'model name' | uniq model name : Intel(R) Xeon(R) CPU E5630 @ 2.53GHz 总结:该服务器有2个4核CPU,型号Intel(R) Xeon(R) CPU E5630 @ 2.53GHz 二.查看内存 2.1 查看内存总数 ]#cat /proc/meminfo | grep MemTotal MemTotal: 32941268 kB //内存32G 注:想要获得哪些系统信息,cd到/proc下查看相关的信息,再添加过滤规则,就缺输出想要得到的信息 uname -a   # 查看内核/操作系统/CPU信息的linux系统信息 head -n l /etc/issue   # 查看操作系统版本 cat / proc/cpuinfo   # 查看CPU信息 hostname   #

使用AWR报告来诊断数据库性能问题

别说谁变了你拦得住时间么 提交于 2019-12-05 02:28:24
对于数据库整体的性能问题,AWR的报告是一个非常有用的诊断工具。 一般来说,当检测到性能问题时,我们会收集覆盖了发生问题的时间段的AWR报告-但是最好只收集覆盖1个小时时间段的AWR报告-如果时间过长,那么AWR报告就不能很好的反映出问题所在。 还应该收集一份没有性能问题的时间段的AWR报告,作为一个参照物来对比有问题的时间段的AWR报告。这两个AWR报告的时间段应该是一致的,比如都是半个小时的,或者都是一个小时的。 关于如何收集AWR报告,请参照如下文档: Document 1363422.1 Automatic Workload Repository (AWR) Reports - Start Point 注:最好一开始我们从ADDM报告入手,因为对应时间段的ADDM报告往往已经指出了问题所在。 参见: Interpretation 在处理性能问题时,我们最关注的是数据库正在等待什么。 当进程因为某些原因不能进行操作时,它需要等待。花费时间最多的等待事件是我们最需要关注的,因为降低它,我们能够获得最大的好处。 AWR报告中的"Top 5 Timed Events"部分就提供了这样的信息,可以让我们只关注主要的问题。 Top 5 Timed Events 正如前面提到的,"Top 5 Timed Events"是AWR报告中最重要的部分

Linux 系统信息查询大全

十年热恋 提交于 2019-12-05 01:53:50
Linux常用系统命令 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb -tv # 列出所有USB设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量资源 # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 # du -sh <目录名> # 查看指定目录的大小 # grep MemTotal /proc/meminfo # 查看内存总量 # grep MemFree /proc/meminfo # 查看空闲内存量 # uptime # 查看系统运行时间、用户数、负载 # cat /proc/loadavg # 查看系统负载磁盘和分区 # mount | column -t # 查看挂接的分区状态 # fdisk -l # 查看所有分区 # swapon -s # 查看所有交换分区 # hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备) # dmesg | grep IDE # 查看启动时IDE设备检测状况网络 # ifconfig #

python模块之psutil详解

允我心安 提交于 2019-12-05 01:11:34
目录 python模块之psutil详解 简介 功能函数 CPU相关: 示例: Memory内存相关: 单位转换 Disk相关: Network相关: 进程管理 进程相关信息的方法: python模块之psutil详解 简介 psutil是一个开源切跨平台的库,其提供了便利的函数用来获取才做系统的信息,比如CPU,内存,磁盘,网络等。此外,psutil还可以用来进行进程管理,包括判断进程是否存在、获取进程列表、获取进程详细信息等。而且psutil还提供了许多命令行工具提供的功能,包括:ps,top,lsof,netstat,ifconfig, who,df,kill,free,nice,ionice,iostat,iotop,uptime,pidof,tty,taskset,pmap。 psutil是一个跨平台的库,在官方网站上查到其支持如下操作系统。 Linux Windows OSX FreeBSD OpenBSD NetBSD Sun Solaris AIX Works with Python versions from 2.6 to 3.X. psutil包含了异常、类、功能函数和常量,其中功能函数用来获取系统的信息,如CPU、磁盘、内存、网络等。类用来实现进程的管理功能 功能函数 根据函数的功能,主要分为CPU、磁盘、内存、网络几类

JAVA--高级基础开发

流过昼夜 提交于 2019-12-04 23:04:47
Day06【线程】 第一章 1.1 线程的基本概念 我们在之前,学习的程序在没有跳转语句的前提下,都是由上而下依次执行,只能做一件事 情,这样的程序我们也称为单线程程序;那么如果想要设计一个程序,边写代码边听歌,怎么设计呢?要解决上述问题,咱们得使用多进程或者多线程来解决。 并行:指两个或多个事件在同一时刻发生。(同时发生)。 并发:指两个或多个事件在同一个段时间内发生。 在操作系统中,安装了多个程序,并发指的是在一段时间内,宏观上有多个程序同时运行,这在CPU系统中,每一时刻只能有一个程序在执行,微观上这些程序是分时交替运行,只不过给人感觉是同时运行的,那是因为分时交替运行的时间是非常短的。 而在多个CPU操作系统中,则这些可以并发执行的程序可以分配到多个处理器上(CPU),实现多个任务并行执行,即利用每个处理器来处理一个可以并发执行的程序,这样就可以完成多个程序同时执行,目前电脑市场上说的多核CPU,便是多核处理器,核数越多,并行处理的程序就越多,能大大提高电脑运行的效率。 [注意] 单核处理器的计算机肯定是不能并行处理多个任务的,只能是多个任务在cpu上并发运行,同理,线程也是一样的,从宏观角度上理解,线程是并行运行的,但是从微观角度上理解,线程是串行运行的,即一个线程一个线程的去运行,当系统只用一个cpu时,线程会以某种顺序执行多个线程,我们把这种情况叫做线程调度。 1.2

鸟哥的Linux私房菜——笔记1

谁都会走 提交于 2019-12-04 20:44:01
基础学习篇1 第0章 计算机概论 1 计算机硬件的五大单元:输入单元、输出单元、CPU内部的控制单元、算术逻辑单元、内存。 2 两种主要CPU种类:精简指令集(Reduced Instruction Set Computing,RISC)和复杂指令集(CISC)。 3 除了五大单元,计算机还需要许多其他接口设备,最重要的接口设备是 主板,主板负责将所有的设备连接在一起,让所有的设备能够进行协调和通信。而主板上最重要的组件是 主板芯片组,一般主板芯片组分为北桥和南桥,北桥的总线为系统总线,是内存传输的主要信道,所以速度较快;南桥是输入输出(I/O)总线。 4 CPU的外频是指 CPU与外部组件进行数据传输/运算时的速度,倍频是CPU内部用来加速工作性能的一个倍数。两者相乘得到CPU的频率。 5 CPU使用的一切数据都来自内存,运算后的数据也要写回内存。个人计算机的内存主要组件为 动态随机访问内存(Dynamic Random Access Memory,DRAM),通电时才能通信与使用,这种RAM被称为挥发性内存。 6 将SRAM(静态随机访问内存)集成到CPU中,可作为第二级高速缓存用来加快数据访问。SRAM比DRAM速度更快。 7 只读存储器ROM。 8 声卡、网卡、特殊功能卡使用PCI接口传输,需使用PCI适配卡。 9 显卡又称为VGA,通过 PCI-Express(显卡接口

linux cgroups 简介

不羁的心 提交于 2019-12-04 18:55:12
cgroups(Control Groups) 是 linux 内核提供的一种机制, 这种机制可以根据需求把一系列系统任务及其子任务整合(或分隔)到按资源划分等级的不同组内,从而为系统资源管理提供一个统一的框架 。简单说,cgroups 可以限制、记录任务组所使用的物理资源。本质上来说,cgroups 是内核附加在程序上的一系列钩子(hook),通过程序运行时对资源的调度触发相应的钩子以达到资源追踪和限制的目的。 本文以 Ubuntu 16.04 系统为例介绍 cgroups,所有的 demo 均在该系统中演示。 为什么要了解 cgroups 在以容器技术为代表的虚拟化技术大行其道的时代了解 cgroups 技术是非常必要的!比如我们可以很方便的限制某个容器可以使用的 CPU、内存等资源,这究竟是如何实现的呢?通过了解 cgroups 技术,我们可以窥探到 linux 系统中整个资源限制系统的脉络。从而帮助我们更好的理解和使用 linux 系统。 cgroups 的主要作用 实现 cgroups 的主要目的是为不同用户层面的资源管理提供一个统一化的接口。从单个任务的资源控制到操作系统层面的虚拟化,cgroups 提供了四大功能: 资源限制:cgroups 可以对任务是要的资源总额进行限制。比如设定任务运行时使用的内存上限,一旦超出就发 OOM。 优先级分配:通过分配的 CPU

面试-进程 线程 协程

旧巷老猫 提交于 2019-12-04 16:12:19
一、进程 进程的概念 1.进程是一个实体。每个进程都有自己的地址空间(CPU分配)。实体空间包括三部分: * 文本区域:存储处理器执行的代码。 * 数据区域:存储变量或进程执行期间使用的动态分配的内存。 * 堆栈:进程执行时调用的指令和本地变量。 2.进程是一个“执行中的程序”。 程序是指令与数据的有序集合,程序本身是没有生命的,只有CPU赋予程序生命时(CPU执行程序),它才能成为一个活动的实体,称为“进程”。 概括来说,进程就是一个具有独立功能的程序在某个数据集上的一次运行活动 进程的特点 * 动态性:进程是程序的一次执行过程,动态产生,动态消亡。 * 独立性:进程是一个能独立运行的基本单元。是系统分配资源与调度的基本单元。 * 并发性:任何进程都可以与其他进程并发执行。 二、并发与并行 并发:在操作系统中,某一时间段,几个程序在同一个CPU上运行,但在任意一个时间点上,只有一个程序在CPU上运行。 当有多个线程时,如果系统只有一个CPU,那么CPU不可能真正同时进行多个线程,CPU的运行时间会被划分成若干个时间段,每个时间段分配给各个线程去执行,一个时间段里某个线程运行时,其他线程处于挂起状态,这就是并发。并发解决了程序排队等待的问题,如果一个程序发生阻塞,其他程序仍然可以正常执行。 并行:当操作系统有多个CPU时,一个CPU处理A线程,另一个CPU处理B线程

解密Go语言之 pprof

最后都变了- 提交于 2019-12-04 15:05:04
相信很多人都听过“雷神 3”关于性能优化的故事。在一个 3D 游戏引擎的源码里,John Carmack 将 1/sqrt(x) 这个函数的执行效率优化到了极致。 一般我们使用二分法,或者牛顿迭代法计算一个浮点数的平方根。但在这个函数里,作者使用了一个“魔数”,根本没有迭代,两步就直接算出了平方根。令人叹为观止! 因为它是最底层的函数,而游戏里涉及到大量的这种运算,使得在运算资源极其紧张的 DOS 时代,游戏也可以流畅地运行。这就是性能优化的魅力! 工作中,当业务量比较小的时候,用的机器也少,体会不到性能优化带来的收益。而当一个业务使用了几千台机器的时候,性能优化 20%,那就能省下几百台机器,一年能省几百万。省下来的这些钱,给员工发年终奖,那得多 Happy! 一般而言,性能分析可以从三个层次来考虑:应用层、系统层、代码层。 应用层主要是梳理业务方的使用方式,让他们更合理地使用,在满足使用方需求的前提下,减少无意义的调用;系统层关注服务的架构,例如增加一层缓存;代码层则关心函数的执行效率,例如使用效率更高的开方算法等。 做任何事,都要讲究方法。在很多情况下,迅速把事情最关键的部分完成,就能拿到绝大部分的收益了。其他的一些边边角角,可以慢慢地缝合。一上来就想完成 100%,往往会陷入付出了巨大的努力,却收获寥寥的境地。 性能优化这件事也一样,识别出性能瓶颈,会让我们付出最小的努力