| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- -- 数据缓存文件
- local DB = require("common.DB")
- local LuaMongo = _G.lua_mongo
- local CommonDB = require("common.CommonDB")
- local Util = require("common.Util")
- -- 开服第10天以后才缓存玩家uid
- local CACHE_UUID_STARTDAY = 1 --10, 改为开服就缓存
- local player_uuid_list = {}
- local function isCacheUuid()
- local openDay = CommonDB.getServerOpenDay()
- if CACHE_UUID_STARTDAY > openDay or _G.is_middle == true then
- return false
- end
- return true
- end
- -- 加载所有玩家的uid, 后续优化下
- local function load_playeruuid()
- _G.collectgarbage("step", 1000000)
- LuaMongo.find(DB.db_char, nil, {lv = 1})
- while true do
- local data = {}
- if not LuaMongo.next(data) then
- break
- end
- player_uuid_list[data._id] = data.lv
- end
- _G.collectgarbage("step", 1000000)
- end
- function Update_PlayerUuidList(playerList)
- if not isCacheUuid() then
- return
- end
- player_uuid_list = playerList
- end
- function Insert_PlayerUuidList(newUuid, lv)
- if not isCacheUuid() then
- return
- end
- player_uuid_list[newUuid] = lv
- end
- function Update_PlayerLv(playerUid, newLV)
- if not newLV then
- return
- end
- player_uuid_list[playerUid] = newLV
- end
- function Get_PlayerUuidList()
- if not isCacheUuid() then
- return
- end
- if not next(player_uuid_list) then
- load_playeruuid()
- end
- return player_uuid_list
- end
|