如何对占据服务器大量cpu资源的用户进行限制

如何对占据服务器大量cpu资源的用户进行限制,第1张

研究生工作过程中遇到有学生无视linux服务器实际的CPU核心数,开出几十上百个运算密集型进程,其他用户登陆困难或无响应等异常情况,需要对占用大头(CPU老虎?)的CPU资源做出限制。
使用cgroup可以实现用户组级别的限制,把老虎们扔进限制组就能解决问题,如果需要分别限制用户那就每个老虎一个组(前提是老虎属于少数,如果多数人都是老虎那就得考虑加CPU甚至加服务器了,组里穷,提买服务器基本属于说废话)。
注意linux中创建用户时默认会创建同名的组,所以按用户限制时不需要额外建组,直接限制用户的名字即可。

1安装cgroup
服务器环境为centos7,使用yum安装cgroup:

2配置cgroup
设置cgroup服务开机启动:

编辑/etc/cgconfigconf:

编辑/etc/cgrulesconf:

第一列为用户(组)名,第二列为限制类型,第三列为限制器名,即前述/etc/cgconfigconf中的限制器

注:同一个限制器下建议只放置一个用户,如果放置多个用户(或者含多个用户的组)会导致组内争抢限制器的资源,组内一个人高占用会使得其他人卡住,违背了使用限制器的初衷“限制少数高占用用户,使得低占用用户体验流畅”。

重启服务:

完成

面对这种CPU老虎,服务器终于重新丝滑流畅了起来

通常情况下,如果你的cpu占用率在0% -- 75%之间变化,这个是正常的。但是要是经常在90%以上,甚至999%或者100%,那就算不正常。下面是我给大家带来服务器cpu多少使用率算正常,希望对大家有帮助!

其实这个没有绝对的说法,说CPU使用多少算正常。

通常情况下,如果你的cpu占用率在0% -- 75%之间变化,这个是正常的。但是要是经常在90%以上,甚至999%或者100%,那就算不正常。

服务器CPU占有率其实就是本机运行的程序占用的CPU资源,表示你的机器在某个时间点的运行程序的情况。

1、使用率越高,说明机器在这个时间上运行了很多程序,反之较少。

2、使用率的高低与本机的CPU强弱有直接关系。现代分时多任务 *** 作系统对CPU都是分时间片使用的:比如A进程占用10ms,然后B进程占用30ms,然后空闲60ms,再又是A进程占10ms,B进程占30ms,空闲60ms;如果在一段时间内都是如此,那么这段时间内的占用率为40%。

3、CPU对线程的响应并不是连续的,通常会在一段时间后自动中断线程。未响应的线程增加,就会不断加大CPU的占用。cpu使用率高的原因有很多,但是一般都是由于病毒木马或开机启动项过多所致。高CPU使用率也可能表明应用程序的调整或设计不良。优化应用程序可以降低CPU的使用率。

相关阅读推荐:

处理指令英文Processing instructions;这是指控制程序中指令的执行顺序。程序中的各指令之间是有严格顺序的,必须严格按程序规定的顺序执行,才能保证计算机系统工作的正确性。

执行 *** 作英文Perform an action;一条指令的功能往往是由计算机中的部件执行一系列的 *** 作来实现的。CPU要根据指令的功能,产生相应的 *** 作控制信号,发给相应的部件,从而控制这些部件按指令的要求进行动作。

控制时间英文Control time;时间控制就是对各种 *** 作实施时间上的定时。在一条指令的执行过程中,在什么时间做什么 *** 作均应受到严格的控制。只有这样,计算机才能有条不紊地工作。

处理数据即对数据进行算术运算和逻辑运算,或进行其他的`信息处理。其功能主要是解释计算机指令以及处理计算机软件中的数据,并执行指令。在微型计算机中又称微处理器,计算机的所有 *** 作都受CPU控制,CPU的性能指标直接决定了微机系统的性能指标。CPU具有以下4个方面的基本功能:数据通信,资源共享,分布式处理,提供系统可靠性。运作原理可基本分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。

服务器CPU和普通CPU有什么不同

一、指令集不同

家用或者用工作用电脑配备的普通CPU,通常为CISC复杂指令集,追求指令集的大而全,尽量把各种常用的功能集成到一块,但是调用速度和命中率相比服务器CPU较低一些。

服务器CPU的指令一般是采用的RISC(精简指令集)。这种设计的好处就是针对性更强,可以根据不同的需求进行专门的优化,能效更高。

二、缓存不同

缓存也决定着CPU的性能,由于服务器CPU对运算性能要求高,所以服务器CPU往往应用了最先进的工艺和技术,并且配备了一二三级缓存,运行能力更强。服务器CPU很早就用上了3级缓存。普通cpu是近几年才用上了缓存技术。

三、接口不同

服务器cpu和普通cpu接口往往不同,目前服务器CPU接口大多为Socket 771、Socket 775、LGA 2011、LGA 1150相比普通CPU接口尽管不少相同,但实际上搭配的主板并不相同。服务器cpu配备的主板通常没有显卡卡槽,因为CPU自带的核心显卡即可满足需求,并且其CPU总线带宽比家用CPU高。

四、稳定性要求不同

服务器CPU是为了长时间稳定工作而存在的,基本都是设计为能常年连续工作的。服务器CPU相比家用CPU在稳定性和可靠性方面有着天壤之别,一般服务器都是365天开机运行,只有偶尔停机维护,对稳定性要求极高。

普通CPU则是按72个小时连续工作而设计的,家用电脑在不使用时,我们还是习惯让他保持关机状态,一般每天都会关机。

五、多路互联支持不同

多路互联是服务器上的一项技术,比如服务器主板可以同时拥有多个CPU插槽,可以同时安装多个CPU,这个就是CPU多路互联技术,这项技术目前只有服务器CPU才支持,普通家用电脑,一块主板只可以安装一个CPU,不支持多路互联。

六、价格不同

由于服务器CPU针对高稳定性设计,在用料上一般都是选用优质材质,并且支持多路互联和长时间工作,和相同性能的普通CPU比,价格自然也是更高。此外,高端服务器CPU更上运用大量的最新先进技术,价格更贵,因此一般服务器CPU价格都在千元以上,高端服务器CPU都是在万元以上,甚至几十万。

而普通CPU价格通常几百元到几千元,主流产品价格基本在千元左右。

以上就是服务器cpu和普通cpu区别,可能很多朋友会问,服务器CPU可以作为家用电脑的CPU吗?答案是否定的,尺有所短寸有所长,两者定位与设计不同。

因为CPU的性能主要靠主板和内存才能完全发挥出来,而由于先天性的设计特点,很多家用电脑的主板是不适合服务器CPU使用的,即使可以用,很多时候也无法保证发挥出其性能优势。而且服务器主板一般都没有显卡槽,因为对服务器来说用集成显卡即可了,对于游戏性能并没有要求。

但是在家用领域,独显则是高清游戏必不可少的环节。所以说家用CPU的设计更符合普通PC电脑的特点,而服务器CPU有着其自身的使命与优势。当然,服务器CPU和桌面CPU两者也是可以互相改进的,比如大家熟悉的至强E3-1230V3处理器,就是由服务器CPU改进而来的,屏蔽了核心显卡,主打高性价比。

就是一块CPU上面有2个CPU核心就叫做双核
一个CPU上只有1个CPU核心就叫做单核
有3个的叫做3核
4个的叫做4核
5个就是5核(== 没见过5核)
但是有6核
如果主频一样的话,核心越多越好

服务器一般都是大负荷任务
所以一般
工作频率
是高的
所以0-70%都是正常的
该要注意的是
CPU温度

超过90是会引起死机等
不稳定因素

PS不会对网速有影响
只会
降低对数据处理的性能


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12676458.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存