我有一台运行Ubuntu Server 12.04 LTS的服务器(2x六核至强E5649 2.53GHz w / HT,32GB RAM和20000 GB带宽)。 服务器运行LAMP只服务一个网站,预计用户数同时为〜15,000。 目前,我有大约2000个用户在线,他们每个人从开始到会话结束,都会运行50个MySQL查询(小数值主要select和插入)。 服务器CPU负载在这个连接数量上是很高的,而32GB的内存使用量差不多是1GB,值得一提的是服务器运行速度非常快,没有任何问题,但我担心的是平均负载。 http://s12.postimage.org/z7hi6mz3h/photo.png top – 03:02:43 up 9 min, 2 users, load average: 50.83, 30.14, 12.83 Tasks: 432 total, 1 running, 430 sleeping, 0 stopped, 1 zombie Cpu(s): 0.1%us, 0.2%sy, 0.0%ni, 66.5%id, 33.1%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 32939992k total, 3111604k used, 29828388k free, 84108k […]
根据http://net-snmp.sourceforge.net/docs/mibs/ucdavis.html#scalar_notcurrent ssCpuUser , ssCpuSystem , ssCpuIdle等不赞成使用原始变体( ssCpuRawUser等)。 前者的值(不包括nice,wait,kernel,interrupt等等)返回一个百分比值: 在最后一分钟计算的用于处理用户级代码的CPU时间百分比。 此对象已被弃用,以支持' ssCpuRawUser(50) ',可用于计算相同的指标,但超过任何所需的时间段。 原始值返回CPU花费的“原始”滴答数量: 处理用户级代码花费的时间(通常为1 / 100s)。 在多处理器系统中,' ssCpuRaw* '计数器在所有CPU上累计,所以它们的总和通常是N * 100(对于N个处理器)。 我的问题是:你如何把蜱的数量变成百分比? 也就是说,你怎么知道每秒钟有多less个嘀嗒声( 通常是 – 这意味着不总是 – 1 / 100s,这意味着每100秒钟1次,或者嘀嗒声代表1/100秒钟)。 我想你也需要知道有多less个CPU, 或者你需要获取所有CPU值来将它们加在一起。 我似乎无法find一个MIB给你一个CPU的整数值,这使得以前的路线尴尬。 后者的路线似乎不可靠,因为有些数字有时会重叠。 例如, ssCpuRawWait有以下警告: 此对象不会在底层操作系统不测量此特定CPU度量标准的主机上实施。 这个时间也可以包含在' ssCpuRawSystem(52) '计数器中。 一些帮助,将不胜感激。 到处似乎只是说%已被弃用,因为它可以派生,但我没有find任何地方,显示官方标准的方式来执行此推导。 第二部分是这些“蜱”似乎是累积的,而不是一段时间。 如何在一段时间内采样值? 我想要的最终信息是:“用户,系统,闲置,漂亮(理想情况下,窃取,尽pipe目前似乎没有标准的MIB)”的百分比(在过去的1-60s可能就足够了,偏好较小的时间跨度)。
我有英特尔酷睿2GHz的Windows XP SP3。 根据Process Explorer,“中断”过程持续占用30-40%的CPU。 这是正常的吗?
假设我有2个quadcore处理器(8×2,13Ghz)。 服务器运行多个程序,只能同时使用1个核心+ Nginx和Apache worker。 问题是,Linux是否有效地将单线程程序分配给每个内核,以便每个程序可以利用1个内核的全部function,而不会干扰Apache和Nginx的负载。 所以基本上确保所有内核都被使用,而不是堆,所以程序可能会落后?
我在CentOS盒子里增加了几千个包装在多个/ 24class的IP地址,因此我得到了日夜扫描。 由于这台服务器将是一个主力,它只需要在SSH(更改的SSH端口)和http / s上可用,我最终阻止邮件端口和ping答复。 这解决了http / s的高响应时间,但iptables增加了服务器上的负载。 我正进入(状态: top – 22:01:30 up 2 days, 10:17, 3 users, load average: 1.99, 2.23, 2.07 Tasks: 198 total, 2 running, 195 sleeping, 0 stopped, 1 zombie Cpu(s): 1.0%us, 5.1%sy, 0.0%ni, 85.0%id, 0.0%wa, 0.0%hi, 8.8%si, 0.0%st Mem: 16638532k total, 2692948k used, 13945584k free, 206992k buffers Swap: 8193140k total, […]
戴尔公司的英语专业为我提供了由PowerEdge 2950提供的错误信息。 CPU2状态:CPU2的处理器传感器,IERR被解除置位 我谷歌search,随机论坛post并没有给我一个明确的答案。 这也显然不是一个字: http : //dictionary.reference.com/browse/deassert? s= t 我可以猜出这个意思。 断言: 以保证,信心或力量陈述 好的。 所以那个消极的。 缺乏信心的状态? 这个错误信息是想告诉我什么? 内存错误与这一个分组:是否试图说IERR的CPU2 应该被设置,但不是? 目前的系统状态是SNAFU,但CPU2认为一切正常?
我试图解决这个问题两天没有成功。 该服务器是一个MySQL数据库服务器。 硬件: DELL Poweredge 1950,2x Intel Xeon四核E5345 @ 2.33GHz,16 Gb内存,2x 146Gb SAS(软件RAID1) 软件: Ubuntu 10.04.3 LTS,MySQL 5.1.41 问题:虽然MySQL没有使用,没有数据库运行,一切似乎没问题。 一旦我安装了一个数据库,就有理由把所有8个内核全部用低内存消耗 。 所以,你可以想象负荷平均值高(我第一次看到212负荷平均值)。 服务器不会变得没有响应,但浏览安装的项目时可以看到速度很慢。 附加信息: 所使用的数据库不超过24MB,并从资源较less的服务器和更大的数据库中移出。 所以这不是数据库/项目。 my.cnf也不是一个原因,因为我使用了默认的一个和我在另一个服务器上使用同一个分配的。有趣的是,mysql不closures任何进程并运行到max_connections的限制。 日志很安静。 空空如也。 在我怀疑Ubuntu 11.10服务器出现问题后,我切换到了Ubuntu版本。 这个工作好了一个小时后,我做了一个内核升级到3.0.1(它也使用内存) 我testing了磁盘速度,似乎没问题。 运行服务器上的更多输出: dstat -cndymlp -N total -D total 3: htop命令: 有没有人遇到同样的问题? 你能想到的任何修复?
我更新了这个post,因为我更换了处理器,但是我的问题的核心(不幸的是结果也一样)。 我build立了我的第一个FreeNAS盒子,并且想要使用ECC RAM,因为我想存储关键数据。 因为我正处于预算之内,所以我希望能够买到仍然支持ECC RAM的最经济实惠的解决scheme。 经过一番研究,我发现,我需要一个支持ECC的主板,内存和CPU。 我select的主板是具有C232芯片组,DDR4和LGA1151插槽的“Gigabyte X150M-Pro ECC”。 我还购买了由Kingston制造的型号为“KVR21E15S8K2 / 8”( 规格表 )的两个DIMM套件。 Gigabyte发布了一系列经过testing的内存模块,而我的模块似乎也支持ECC( 支持的模块列表 )。 由于我在预算中,我需要一个支持ECC的经济实惠的Skylake CPU。 据英特尔赛扬G3900支持ECC,所以我去了那一个。 在构build计算机之后,我想确认我的系统是否正在运行ECC内存,然后进入主板的BIOS。 从各种互联网网站,我发现一些主板有一个特殊的部分 ,应该告诉ECC是否工作,但我的主板似乎没有。 我检查了所有的菜单,我找不到类似的部分。 在做了一些更多的研究之后 ,在Unix和Linux的stackexchange上发现了一个没有解决我的问题的post 。 我尝试了最新的memtest86+ ,从我可以告诉,甚至没有显示“ECC”的价值。 我尝试了Puget系统使用的显示“ECC:off”的较旧的4.20版本。 然而,在阅读之前提到的post之后,我怀疑它说的是实话(也许这就是为什么该function被删除?)。 这两个版本也没有读出DIMM的正确速度和延迟,这增加了我对memtest86+怀疑。 如果ECC正在工作,另一个stream行的方法是发出dmidecode -t memory命令并读出Total Width和Data Width 。 我的结果分别是128 Bits和64 Bits 。 输出的一部分显示了具有Error Correction Type: Single-bit ECC的键 – 值对的存储器arrays的细节。 我预计Total Width为72 bits ,所以我认为它可能与双通道有关,并将内存模块移到两个相邻的插槽中,以防止双通道,但结果是一样的。 这是dmidecode -t […]
今天,我们在两台相同的kvm和qemu主机(Dell R910)上遇到了一个非常奇怪的行为。 每个主机系统都有4 x 10个核心,这意味着在操作系统(Ubuntu Linux 10.04 64 Bit,Kernel 3.0)中,有40个物理核心显示为80个。 我们在其中一个节点上启动了Windows 2003 32位虚拟机(1个CPU,1 GB RAM,我们多次更改这些值),并注意到启动过程需要15分钟。 在这15分钟内,黑屏显示,没有任何反应。 libvirt和主机系统显示guest虚拟机的qemu-kvm进程几乎空转。 对这个过程进行维护只会显示一些FUTEX条目,但没有特别之处。 在这15分钟之后,Windows VM突然启动并出现Windows徽标。 几秒钟后,虚拟机就可以使用了。 虚拟机本身是非常高性能的,所以这不是性能问题。 我们试图用virsh和taskset工具来固定CPU,但这只会让事情变得更糟。 当我们使用Linux Live CD启动Windows VM时,也会出现几分钟的黑屏,但不会长达15分钟。在此主机(Ubuntu 10.04)上启动另一台VM时,也会出现黑屏问题,黑屏只显示2-3分钟(而不是15)。 所以,这样做:这些相同节点上的每个访客在启动后几分钟内都会怠速。 几分钟后,启动过程突然开始。 我们观察到,空闲时间恰好在客人的BIOS初始化之后发生。 我们的一个员工有想法限制Grub(内核参数)中maxcpus = 40(因为有40个物理内核)的CPU数量,突然间“黑屏空闲”的行为消失了。 searchKVM和Qemu邮件列表,互联网,论坛,serverfault和其他各种网站的已知错误等没有有用的结果。 即使在开发者IRC频道询问也没有提出新的想法。 那里的人推荐我们使用CPU固定,但如前所述,它并没有帮助。 我现在的问题是:qemu或kvm主机系统的CPU是否有某种限制? 浏览这两个工具的源代码表明,如果你的主机有超过255个CPU,KVM会发出一个警告。 但是,我们甚至没有在这个限制上抓挠。 关于主机系统的一些东西: 3.0.0-20-server kvm 1:84+dfsg-0ubuntu16+0.14.0+noroms+0ubuntu4 kvm-pxe 5.4.4-7ubuntu2 qemu-kvm 0.14.0+noroms-0ubuntu4 qemu-common 0.14.0+noroms-0ubuntu4 libvirt 0.8.8-1ubuntu6 4 x Intel(R) […]
我有以下情况发生: 我们正在使用8核,8gb ram,2.6 ghz的linode(使用nginx + php-fpm) – 我们获得了非常高的cpu使用率图表(我们不想成为如此糟糕的VPS邻居)… 我们的网站一次只有不到100个用户 – 所以这种情况也令人难以置信 – 我们的CPU使用率非常高。 我们正在使用一个非常未知的,可能是CPU密集型的PHP智慧,可怕的框架,而不是众所周知的,有据可查的,精心制作的其他框架,如WordPress或Drupal,其中有大量关于caching的文档(以及插件处理caching)在一个nginx + php_fpm平台上的php。 因此,我们有大约6个开放的php-fpm进程,当运行时,单独消耗大量(30+,通常接近99%)的CPU数量 – 而且我并没有真正想到如何阻止他们使用如此之多的CPU 。 我不知道是哪个php脚本导致这些尖峰,因为它们一直在发生……通常只有1或2个正在运行 – 但是当所有6个运行时,我们最大化所有8个cpus。 我的pool.d / www.conf文件具有以下设置: pm = dynamic pm.max_children = 10 pm.start_servers = 4 pm.min_spare_servers = 2 pm.max_spare_servers = 6 我们做了这个设置,因为按照我解释的方式,我们的记忆实际上是惊人的(htop显示472/7000 + mb使用,没有交换等),我们可以处理更多的进程,并打破等待获得的线处理 – 但不幸的是,因为在运行时我们的CPU上每个进程都过于激烈 – 我们最终将通过车顶驱动CPU – 所以我们无法处理足够的进程。 这个问题 – 我们可以做些什么来减lessphp-fpm cpu使用的过程,这样我们可以增加php-fpm池configuration文件中的设置 – […]