ppmm 发表于 2023-4-1 17:56:11

top cmd 2m左右是不是应该不上榜啊。

我觉得这是正常的消耗吧

icer 发表于 2023-4-1 18:34:13

算一下账:整个统计周期是8x60=480秒,一个id用2秒的话,整个cpu持续100%的时间都用来支持玩家指令,最多能支持240个玩家。这时候已经人人都卡了。更别提cpu还需要划出一大部分时间来计算战斗,计算系统任务之类的消耗,这块大概需要20-33%左右的cpu。2m看似比以前低,但主要是因为统计周期短了的缘故,由于数据更新时间不定,所以统计周期可能在几分钟到十几分钟之间,看总时间需要结合统计周期来看。
所以如果完全公平的话,一个id2秒其实也还是多了。但考虑到很多id其实都是小号,命令很少,给他们留cpu资源也是浪费,所以现在没有采用硬划一条时间线的办法来限制,而是采用了相对灵活的命令消耗排名和cpu负载结合的形式。也就是说,cpu闲的时候,你一个人消耗10秒都无所谓,但是cpu忙起来,消耗排头几位的id就需要为后面的玩家考虑一下,优化一下自己的机器。其实很多情况下都是无效指令浪费了大量cpu。
具体到你这个情况,首先2m受限的情况很少出现,其次也不是没有优化的空间。比如减少wield次数,用jq 编号代替jq等等,都可以有效降低cpu消耗。
命令数限制这个事情后面我还会专门写个帖子来说一下原因和影响,这段时间太忙,等闲下来的。。。

ppmm 发表于 2023-4-1 19:15:59

icer 发表于 2023-4-1 06:34 PM
算一下账:整个统计周期是8x60=480秒,一个id用2秒的话,整个cpu持续100%的时间都用来支持玩家指令,最多能 ...

好的,知道了。请教一下,如果用jobquery ++建立一个我做任务的列表。这时候用jobquery是比直接用jobquery要节省很多吗

suwuji 发表于 2023-4-1 19:18:36

ppmm 发表于 2023-4-1 07:15 PM
好的,知道了。请教一下,如果用jobquery ++建立一个我做任务的列表。这时候用jobquery是比直接用jobquer ...

肯定快些

ppmm 发表于 2023-4-1 19:19:05

suwuji 发表于 2023-4-1 07:18 PM
肯定快些

好的,多谢

icer 发表于 2023-4-1 20:20:56

刚才想把显示的信息加上平均耗时,避免统计时段长短不一带来的误会,结果出错了,导致top cmd失效

然后系统整体cmd上限很快就到了22

每次限制3个大户ip,换来整体的流畅,还是很值得的

ppmm 发表于 2023-4-1 20:35:40

icer 发表于 2023-4-1 08:20 PM
刚才想把显示的信息加上平均耗时,避免统计时段长短不一带来的误会,结果出错了,导致top cmd失效

然后系 ...

能不能显示出具体是哪个id的命令耗时多大,

icer 发表于 2023-4-1 20:37:33

不能,考虑到性能影响,记录命令的时候没有做ip到id的转换,后面也没法做。不过既然是自己的id,从top cmddetail上应该能看出是哪一个

loveg 发表于 2023-4-2 09:12:14

既然能记录玩家是连续的几次上榜,能不能第一次只提示,不限制,从第二次开始限制?给玩家一个关机器放弃任务的机会,像我这种一天只能有一个小时功夫玩的,技术又不行,自己写的机器没有高度适配迷宫,谍报一直look造成的限制,直接十分钟没了

ppmm 发表于 2023-4-2 09:13:19

loveg 发表于 2023-4-2 09:12 AM
既然能记录玩家是连续的几次上榜,能不能第一次只提示,不限制,从第二次开始限制?给玩家一个关机器放弃任 ...

闲着没事就top cmddetail一下,会提示你
页: [1] 2
查看完整版本: top cmd 2m左右是不是应该不上榜啊。