This commit is contained in:
wuhao 2020-10-20 22:01:16 +08:00
parent d24555b979
commit 3d4c7ec546
3 changed files with 14 additions and 6 deletions

10
main.py
View File

@ -14,7 +14,9 @@ loop = asyncio.get_event_loop()
async def main():
tasks = []
server_df, game_df = get_server_list()
df = get_server_list()
server_df = df['server_df']
game_df = df['game_df']
# gm_db pool
gm_db_pool = await aiomysql.create_pool(**settings.GAME_MANA_MYSQLDB, maxsize=100, autocommit=True)
@ -43,10 +45,14 @@ async def main():
# 更新支付信息
for game_name, pay_db_conf in settings.PAY_DB.items():
try:
serverid_set = set(game_df.get_group(game_name)['serverid'].unique())
except:
serverid_set = set()
task = asyncio.create_task(LoadPayData(pay_db_conf=pay_db_conf,
gm_db_pool=gm_db_pool,
game_name=game_name,
serverid_list=list(game_df.get_group(game_name)['serverid'].unique())
serverid_set=serverid_set
).run())
tasks.append(task)

View File

@ -13,7 +13,7 @@ class LoadPayData(LoadData):
super().__init__(*args, **kwargs)
self.pay_mysql_conf = kwargs.get('pay_db_conf')
self.game_name = kwargs.get('game_name')
self.serverid_list = kwargs.get('serverid_list')
self.serverid_set = kwargs.get('serverid_set')
async def get_data(self):
# 获取充值数据 所有区服
@ -33,7 +33,7 @@ class LoadPayData(LoadData):
rss = await cur.fetchall()
res_data = []
for p in rss:
if p.get('serverid') not in self.serverid_list:
if p.get('serverid') not in self.serverid_set:
continue
p['data'] = p['data2']
res_data.append(p)

View File

@ -17,5 +17,7 @@ def get_server_list():
& (server_df['dbuser'] != '')
& (~server_df['game'].isin(['xiyou', 'fengshen', 'hommh5', 'sanguo', 'gods']))
]
return server_df.groupby(['game', 'dbhost', 'dbport', 'dbuser', 'dbpwd']), server_df.groupby('game')
return {
'server_df':server_df.groupby(['game', 'dbhost', 'dbport', 'dbuser', 'dbpwd']),
'game_df':server_df.groupby('game')
}