网站首页 | 服 务 器 | 网络安全 | php语言 | 私服技术 | CSS 学习 | 数 据 库 | LIUNX | 搜索 | 图片

TOP

服务器卡的重要原因
[ 录入者:admin | 时间:2008-04-30 02:31:08 | 作者: | 来源: | 浏览:242次 ]
大家都认为服务器卡是因为地图或者人数,怪物数量的原因,其实并不是这样的,服务器启动后最大的负载是market_def下面的商店NPC文件,虽然这都是些*.txt文件,但众所周知,这些文件只算是一个索引文件,服务器在读取这些文件后会在market_saved和market_price下面建立相关的数据内容,也就是商店里面的库存物品.这里的数据量是非常大的,非常消耗系统资源.以致造成卡机,网络延迟,缓慢.因为系统要不断地从这里读取内容然后又写回.

在market_def下面的文本中,比如药品店,它的物品对应着2个数字

太阳水
1000是代表刷的数量,后面的1是指刷新的时间,也就是说1分钟(小时?)就要刷新1000瓶太阳水,而我们商店里卖的东西又多,这样一来,每时每刻我们的服务器都在大量地刷新物品,你们说这会不卡吗?
当然,在market.txt中,NPC本身也有一个刷新参数,也就是说NPC自身也在不停地刷新,这样一来再好的机子也难以支撑.

把market_def文件夹下的NPC文件移植到NPC_def文件夹下面去,这样做了之后,服务器变得非常的流畅,我刷了大量的怪物,速度也不慢(人物不会一卡一卡),要知道测试用的机子可以做到这一步已经很令人吃惊了(赛扬366 96M 4G硬盘)
在NPC_def文件夹下面的文件是不会产生*.saved的保存文件的,因此可以节省大量的系统资源,但是这有一个致命的缺点就是这个文件夹下面的药店,饰品店,武器店,小贩,武器特修,不可以买卖物品,不可以进行修理或特修,仓库不能保管或取回.因为NPC_def下面的NPC只能属于那种纯脚本型的,不带M2server.exe中部分默认的参数(估计是这样的)
当然,如果有高手可以解决这部分问题那就最好了,比如写出一些脚本,点一下某物品的名字就给你一个这个物品,然后扣除相应的钱数(编起来很累的).

现在只能又把NPC移回market_def目录和market.txt中去了,这样一来又会卡的不得了,分析后觉得,估计这和刷新的时间长短有关系,大家看看能不能把刷新的时间改得长一点(不要太频繁地刷新)系统也许就会快很多.
NPC_def还有一个好处就是目录下的NPC更新后不会闪烁,免去很多操作.
大家如果要试一下速度就先把merchant.txt文件删空(记得备份哦)然后启动进去看看就知道了.

30
[上一篇]传奇私服服务器三开的方法 [下一篇]英雄合击私服如何查看IP

评论

称  呼:
内  容:

相关栏目

最新文章

热门文章

推荐文章

相关文章

广告位