game2005api/tools/rankserver/rankserver_cmd.py
aozhiwei 6a95fa1365 1
2021-12-17 19:37:19 +08:00

74 lines
1.8 KiB
Python

# -*- coding: utf-8 -*-
#!/usr/bin/python
import sys
sys.path.append('../local_packages')
import q7
import f7
import pymysql
import hashlib
import json
import time
import datetime
import redis
import os
if f7.isOnlineEnv():
import game2005_rankserver as app
else:
import app
def _updateRank_cmd(debug_info):
app.fullUpdateRank()
def _clearRank_cmd(debug_info):
for conf in app.getRedisConf():
r = redis.Redis(host = conf['host'],
port = conf['port'],
password = conf['passwd'],
charset = 'utf8'
)
kill_keys = f7.scanRedisKey(r, "game2005api:kill_rank_*")
win_keys = f7.scanRedisKey(r, "game2005api:win_rank_*")
integral_keys = f7.scanRedisKey(r, "game2005api:integral_rank_*")
for key in kill_keys :
r.delete(key)
for key in win_keys :
r.delete(key)
for key in integral_keys :
r.delete(key)
def processCmdLine(cmd):
cmd_hash = {
'updateRank': _updateRank_cmd,
'clearRank': _clearRank_cmd,
}
precmd_hash = {
}
postcmd_hash = {
}
debug_info = {
'record_count': 0,
'param1': 0,
'param2': 0,
'param3': 0,
'param4': 0
}
if cmd in precmd_hash:
precmd_hash[cmd](debug_info)
if cmd in cmd_hash:
cmd_hash[cmd](debug_info)
if cmd in postcmd_hash:
postcmd_hash[cmd](debug_info)
if __name__ == "__main__":
if len(sys.argv) <= 1:
pass
else:
q7.xPrint('pid:' + str(os.getpid()))
f7.app.init('/data/logs/game2005_rankserver_cmd/logs')
f7.udplog.info('game2005_rankserver_cmd start pid:' + str(os.getpid()))
processCmdLine(sys.argv[1])
f7.app.start()