# -*- 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 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, "game2001api:kill_rank_*") win_keys = f7.scanRedisKey(r, "game2001api:win_rank_*") integral_keys = f7.scanRedisKey(r, "game2001api: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/game2001_rankserver_cmd/logs') f7.udplog.info('game2001_rankserver_cmd start pid:' + str(os.getpid())) processCmdLine(sys.argv[1]) f7.app.start()