From 2b1f9e7dcc20440576ee63014e0080a529ab0486 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 14 一月 2021 18:31:22 +0800
Subject: [PATCH] 4908 【BT】【主干】gameserver realtime备份过大导致卡顿(优化拍品记录保存期限;输出自定义表存档大小);
---
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamilyStore.py | 2 +-
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSealDemon.py | 2 +-
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py | 4 ++--
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerXMZZ.py | 2 +-
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBillboard.py | 4 ++--
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py | 2 +-
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py | 10 +++++-----
ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py | 24 +++++++++++++++++-------
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerCompensation.py | 4 ++--
ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerBourse.py | 4 ++--
10 files changed, 34 insertions(+), 24 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBillboard.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBillboard.py
index b7926c8..9eb6861 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBillboard.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBillboard.py
@@ -73,13 +73,13 @@
cnt += 1
savaData += billboardData.getBuffer()
- GameWorld.Log("Save DBCrossBillboard cnt :%s" % cnt)
+ GameWorld.Log("Save DBCrossBillboard count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
def LoadPyGameData(self, datas, pos, dataslen):
cnt, pos = CommFunc.ReadDWORD(datas, pos)
- GameWorld.Log("Load DBCrossBillboard cnt :%s" % cnt)
+ GameWorld.Log("Load DBCrossBillboard count :%s" % cnt)
for _ in xrange(cnt):
billboardData = PyGameDataStruct.tagDBCrossBillboard()
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
index 70b2c2d..5351038 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
@@ -200,7 +200,7 @@
cnt += 1
savaData += billboardData.getBuffer()
- GameWorld.Log("SaveCrossPKBillboard cnt :%s" % cnt)
+ GameWorld.Log("SaveCrossPKBillboard cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -2066,7 +2066,7 @@
cnt += 1
savaData += overInfoData.getBuffer()
- GameWorld.Log("SaveDBCrossPKUnNotifyOverInfo cnt :%s" % cnt)
+ GameWorld.Log("SaveDBCrossPKUnNotifyOverInfo cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
index 039f07e..79bce76 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldBoss.py
@@ -806,7 +806,7 @@
cnt += 1
savaData += attentionData.getBuffer()
- GameWorld.Log("SaveBossAttention cnt :%s" % cnt)
+ GameWorld.Log("SaveBossAttention cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerBourse.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerBourse.py
index 162afff..b6e3fcc 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerBourse.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerBourse.py
@@ -775,7 +775,7 @@
cnt += 1
savaData += record.getBuffer()
- GameWorld.Log("SaveBourseRecord cnt :%s" % cnt)
+ GameWorld.Log("SaveBourseRecord cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入好友数据
@@ -836,7 +836,7 @@
cnt += 1
savaData += itemLastPrice.getBuffer()
- GameWorld.Log("SaveBourseItemLastPrice cnt :%s" % cnt)
+ GameWorld.Log("SaveBourseItemLastPrice cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入好友数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerCompensation.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerCompensation.py
index 84c3f33..9ebe153 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerCompensation.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerCompensation.py
@@ -90,13 +90,13 @@
cnt += 1
savaData += mailObj.getBuffer()
- GameWorld.Log("Save DBCrossPersonalCompensation cnt :%s" % cnt)
+ GameWorld.Log("Save DBCrossPersonalCompensation count :%s, len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
def LoadPyGameData(self, datas, pos, dataslen):
cnt, pos = CommFunc.ReadDWORD(datas, pos)
- GameWorld.Log("Load DBCrossPersonalCompensation cnt :%s" % cnt)
+ GameWorld.Log("Load DBCrossPersonalCompensation count :%s" % cnt)
for _ in xrange(cnt):
mailObj = PyGameDataStruct.tagDBCrossPersonalCompensation()
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamilyStore.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamilyStore.py
index 113bc08..a91de29 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamilyStore.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerFamilyStore.py
@@ -187,7 +187,7 @@
cnt += 1
savaData += storeItem.getBuffer()
- GameWorld.Log("SaveFamilyStoreItem cnt :%s"%cnt)
+ GameWorld.Log("SaveFamilyStoreItem cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入好友数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSealDemon.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSealDemon.py
index 94b3f58..d948b78 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSealDemon.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSealDemon.py
@@ -66,7 +66,7 @@
cnt += 1
savaData += sealDemonRecord.getBuffer()
- GameWorld.Log("SaveSealDemonRecord cnt :%s" % cnt)
+ GameWorld.Log("SaveSealDemonRecord cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入好友数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py
index bb54b83..770c385 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerSocial.py
@@ -268,7 +268,7 @@
cnt += 1
savaData += friend.getBuffer()
- GameWorld.Log("SaveFriendData cnt :%s"%cnt)
+ GameWorld.Log("SaveFriendData cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入好友数据
@@ -385,7 +385,7 @@
cnt += 1
savaData += socialPlayer.getBuffer()
- GameWorld.Log("!!SaveEnemyData cnt :%s"%cnt)
+ GameWorld.Log("!!SaveEnemyData cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入
@@ -541,7 +541,7 @@
cnt += 1
savaData += socialPlayer.getBuffer()
- GameWorld.Log("!!SaveContactsData cnt :%s"%cnt)
+ GameWorld.Log("!!SaveContactsData cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入
@@ -622,7 +622,7 @@
cnt += 1
savaData += socialPlayer.getBuffer()
- GameWorld.Log("!!SaveBlacklistData cnt :%s"%cnt)
+ GameWorld.Log("!!SaveBlacklistData cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入
@@ -765,7 +765,7 @@
cnt += 1
savaData += socialPlayer.playerInfo.getBuffer()
- GameWorld.Log("SaveSocialData cnt :%s"%cnt)
+ GameWorld.Log("SaveSocialData cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerXMZZ.py b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerXMZZ.py
index 17982a1..83b4eb3 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerXMZZ.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/Player/PlayerXMZZ.py
@@ -574,7 +574,7 @@
cnt += 1
savaData += XMZZData.getBuffer()
- GameWorld.Log("SaveXMZZ cnt :%s" % cnt)
+ GameWorld.Log("SaveXMZZ cnt :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py b/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py
index 7599174..a4df3e7 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/PyDataManager.py
@@ -27,12 +27,14 @@
import AuctionHouse
import PlayerAssist
import PyGameDataStruct
+import IpyGameDataPY
import CommFunc
+import time
def GetSavePyData():
pyGameDataMgr = GetPyGameDataManager()
result = pyGameDataMgr.GetSaveData()
- GameWorld.DebugLog("GetSavePyData!! id = %s-%s"%(id(pyGameDataMgr), len(result)))
+ GameWorld.Log("GetSavePyData!! id = %s-%s"%(id(pyGameDataMgr), len(result)))
result = binascii.b2a_hex(result)
#GameWorld.DebugLog("GetSavePyData!! result = %s-%s"%(result, len(result)))
# 字节码在C++转化会发生错误must be string without null bytes, not str,但是可以正常保存,错误会在下次调用便宜接口才会触发
@@ -65,7 +67,7 @@
PlayerAssist.OnSaveAssistThanksData(dbData)
savaData += dbData.getBuffer()
- GameWorld.Log("Save DBAssistThanks count :%s" % cnt)
+ GameWorld.Log("Save DBAssistThanks count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -104,7 +106,7 @@
cnt += 1
savaData += dbData.getBuffer()
- GameWorld.Log("Save DBAssist count :%s" % cnt)
+ GameWorld.Log("Save DBAssist count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -145,7 +147,7 @@
cnt += 1
savaData += dbData.getBuffer()
- GameWorld.Log("Save PlayerViewCachePy count :%s" % cnt)
+ GameWorld.Log("Save PlayerViewCachePy count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -177,13 +179,21 @@
cntData = ""
cnt = 0
+ unSaveCnt = 0
+ curTime = int(time.time())
+ vaildSeconds = IpyGameDataPY.GetFuncCfg("AuctionHouse", 1) * 3600 * 24
for recordDict in [self.myAuctionItemRecordDict, self.myBidItemRecordDict, self.familyAuctionItemRecordDict]:
for recordList in recordDict.values():
for dbData in recordList:
+ if vaildSeconds:
+ recordTime = GameWorld.ChangeTimeStrToNum(dbData.RecordTime)
+ if curTime - recordTime > vaildSeconds:
+ unSaveCnt += 1
+ continue
cnt += 1
savaData += dbData.getBuffer()
- GameWorld.Log("Save AuctionRecord count :%s" % cnt)
+ GameWorld.Log("Save AuctionRecord count :%s len=%s unSaveCnt=%s" % (cnt, len(savaData), unSaveCnt))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -217,7 +227,7 @@
cnt += 1
savaData += dbData.getBuffer()
- GameWorld.Log("Save AuctionAttention count :%s" % cnt)
+ GameWorld.Log("Save AuctionAttention count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
@@ -273,7 +283,7 @@
cnt += 1
savaData += dbData.getBuffer()
- GameWorld.Log("Save AuctionItem count :%s" % cnt)
+ GameWorld.Log("Save AuctionItem count :%s len=%s" % (cnt, len(savaData)))
return CommFunc.WriteDWORD(cntData, cnt) + savaData
# 从数据库载入数据
--
Gitblit v1.8.0