# -*- coding: utf-8 -*- #!/usr/bin/python import pymysql import hashlib import json import urllib.request import base64 import tornado.ioloop import tornado.web import time import datetime #定时读取mysql里的数据生成排行榜写入redis后php读取redis返回客户端显示 def info(msg): print(str(datetime.datetime.now()) + '[INFO] ' + msg) def updateRedis(): pass def readMysqlData(): mysql_conf = json.loads(open('/var/data/conf_test/game2001api_rankserver/config/rankserver.mysql.cluster.json', 'r').read()) for conf in mysql_conf: conn = pymysql.connect(host = conf['host'], port = conf['port'], user = conf['user'], passwd = conf['passwd'], db = 'gamedb2001_' + str(conf['instance_id']), charset = 'utf8' ) cursor = conn.cursor() cursor.execute('SELECT accountid, user_name FROM user') for row in cursor: print(row[0]) class SelfCheckingHandler(tornado.web.RequestHandler): def get(self): self.write(json.dumps({ 'errcode': 0, 'errmsg': '', 'healthy': 1, 'max_rundelay': 10 })) def make_app(): return tornado.web.Application([ (r"/webapp/index[\.]php", SelfCheckingHandler), ]) if __name__ == "__main__": readMysqlData() conf = json.loads(open('/var/data/conf_test/game2001api_rankserver/config/rankserver.json', 'r').read()) app = make_app() app.listen(conf['listen_port']) tornado.ioloop.IOLoop.current().start()