From 4ee1bd5de9ca76a69adac6e17a11bd686c742ef3 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 22 五月 2024 18:57:54 +0800 Subject: [PATCH] 融入交易 --- middle_server.py | 41 +++++++++++++++++++++++++++++++++++------ 1 files changed, 35 insertions(+), 6 deletions(-) diff --git a/middle_server.py b/middle_server.py index 4e39e59..a81c36e 100644 --- a/middle_server.py +++ b/middle_server.py @@ -1,4 +1,5 @@ import builtins +import copy import hashlib import json import logging @@ -10,17 +11,34 @@ import time import constant -import log import socket_manager from db import mysql_data from db.redis_manager import RedisUtils, RedisManager -from log import logger_debug, logger_request_debug +from log_module import log +from log_module.log import logger_debug from middle_l1_data_server import L1DataManager from output import push_msg_manager +from trade import huaxin_trade_api from utils import socket_util, kpl_api_util, hosting_api_util, kp_client_msg_manager, global_data_cache_util, tool from utils.juejin_util import JueJinHttpApi trade_data_request_queue = queue.Queue() + +__mysql_config_dict = {} + + +def get_mysql_config(db_name): + """ + 鑾峰彇mysql鐨勯厤缃� + :param db_name: + :return: + """ + if db_name in __mysql_config_dict: + return __mysql_config_dict.get(db_name) + config = copy.deepcopy(constant.MYSQL_CONFIG) + config["database"] = db_name + __mysql_config_dict[db_name] = config + return config class MyTCPServer(socketserver.TCPServer): @@ -235,7 +253,8 @@ db = data["db"] cmd = data["cmd"] args = data.get("args") - mysql = mysql_data.Mysqldb() + mysql_config = get_mysql_config(db) + mysql = mysql_data.Mysqldb(mysql_config) method = getattr(mysql, cmd) args_ = [] if args: @@ -300,11 +319,21 @@ datas = data_json["data"] L1DataManager.add_datas(datas) break + elif data_json["type"] == "simulation_trade": + datas = data_json["data"] + ctype = datas["ctype"] + data = datas["data"] + result = huaxin_trade_api.request(ctype,data) + result_str = json.dumps({"code": 0, "data": result}, default=str) + sk.sendall(socket_util.load_header(result_str.encode(encoding='utf-8'))) + + except Exception as e: log.logger_tuoguan_request_debug.exception(e) finally: if time.time() - __start_time > 2: - log.logger_tuoguan_request_debug.info(f"鑰楁椂锛歿int(time.time() - __start_time)}s 鏁版嵁锛歿data_json}") + log.logger_tuoguan_request_debug.info( + f"鑰楁椂锛歿int(time.time() - __start_time)}s 鏁版嵁锛歿data_json}") else: # 鏂紑杩炴帴 break @@ -341,7 +370,7 @@ pass -def run(port = constant.MIDDLE_SERVER_PORT): +def run(port=constant.MIDDLE_SERVER_PORT): print("create MiddleServer") t1 = threading.Thread(target=lambda: clear_invalid_client(), daemon=True) t1.start() @@ -353,4 +382,4 @@ if __name__ == "__main__": - print(builtins.type("")==str) + pass -- Gitblit v1.8.0