# 异步加线程池. from concurrent.futures import ThreadPoolExecutor import asyncio all_tables=["select * from hdrx.bas_source", "select * from hdrx.bas_station", "select * from hdrx.bas_unit","select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his",] def runsql(ttt): import pandas as pd pd.read_sql_query import pandas as pd from sqlalchemy import create_engine user = 'root' mysql_pass = 'root' mysql_ip = '127.0.0.1' engine = create_engine( "mysql+pymysql://{}:{}@{}:3306/hdrx".format(user, mysql_pass, mysql_ip)) cmd_one_line_sql = ttt df = pd.read_sql_query(cmd_one_line_sql, con=engine) return df if 1: import time kaishi=time.time() async def mini(): with ThreadPoolExecutor(max_workers=10) as executor: loop = asyncio.get_event_loop() tasks = [ loop.run_in_executor(executor, runsql, table) for table in all_tables ] results = await asyncio.gather(*tasks, return_exceptions=True) return results a=asyncio.run(mini()) # print(a) print("异步加线程池的速度",time.time()-kaishi) print("异步的速度") kaishi=time.time() async def runsql(ttt): import pandas as pd pd.read_sql_query import pandas as pd from sqlalchemy import create_engine user = 'root' mysql_pass = 'root' mysql_ip = '127.0.0.1' engine = create_engine( "mysql+pymysql://{}:{}@{}:3306/hdrx".format(user, mysql_pass, mysql_ip)) cmd_one_line_sql = ttt df = pd.read_sql_query(cmd_one_line_sql, con=engine) return df async def mini(): tasks = [ runsql(table) for table in all_tables ] results = await asyncio.gather(*tasks, return_exceptions=True) return results a=asyncio.run(mini()) # print(a) print("异步的速度",time.time()-kaishi) import asyncio import time import pandas as pd from sqlalchemy.ext.asyncio import create_async_engine from sqlalchemy.sql import text # 待执行的 SQL 列表 all_sql = [ "select * from hdrx.bas_source", "select * from hdrx.bas_station", "select * from hdrx.bas_unit", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", "select * from hdrx.source_data_day_his", ] # 数据库配置 DB_CONFIG = { "user": "root", "password": "root", "host": "127.0.0.1", "port": 3306, "database": "hdrx" } #====================最快速查询sql的方法. async def runsql_async(ttt): """真异步 SQL 查询函数""" # 创建异步引擎(基于 asyncmy 驱动) async_engine = create_async_engine( f"mysql+asyncmy://{DB_CONFIG['user']}:{DB_CONFIG['password']}@{DB_CONFIG['host']}:{DB_CONFIG['port']}/{DB_CONFIG['database']}", echo=False # 关闭 SQL 日志输出 ) async with async_engine.connect() as conn: # 执行 SQL 查询 result = await conn.execute(text(ttt)) # 获取查询结果并转为 DataFrame df = pd.DataFrame(result.fetchall(), columns=result.keys()) # 关闭异步引擎 await async_engine.dispose() return df async def mini_async(): """异步任务调度函数""" tasks = [runsql_async(table) for table in all_sql] results = await asyncio.gather(*tasks, return_exceptions=True) return results # 测试真异步版本速度 if __name__ == "__main__": kaishi = time.time() a = asyncio.run(mini_async()) # print(a) print("真异步(asyncmy)的速度", time.time() - kaishi)最快速查询sql的方法. asyncmy
张小明
前端开发工程师
Open-AutoGLM新手教程:图文详解每一步操作
Open-AutoGLM新手教程:图文详解每一步操作 1. 引言:让AI帮你操作手机,只需一句话 你有没有想过,只要说一句“打开小红书搜美食”,手机就能自动完成打开App、输入关键词、点击搜索这一整套操作?这不再是科…
如何用API调用GPEN?REST接口封装与文档生成指南
如何用API调用GPEN?REST接口封装与文档生成指南 1. 引言:为什么需要为GPEN封装API? 你可能已经用过 GPEN 图像肖像增强 WebUI,它界面友好、功能强大,适合手动上传图片进行修复和美化。但如果你希望将这个能力集成到自…
解决中文用户名导致的软件启动失败
今天在配置新的软件时,发现软件启动失败。原因是软件的日志文件存放在了我C盘下的中文名用户下了。 为了修改为英文名也是费了九牛二虎之力。 当前用户是无法直接修改用户名的,因此我们需要更高的权限。 一、激活Administrator账户 1.在搜索栏输入“…
YOLOv12官版镜像实测:mAP高达40.4太惊艳
YOLOv12官版镜像实测:mAP高达40.4太惊艳 1. 引言:为什么YOLOv12值得你立刻关注? 目标检测领域又一次迎来重大突破。当所有人都以为YOLO系列会继续在CNN架构上精雕细琢时,YOLOv12横空出世,彻底颠覆了传统。它不再是“…
AGENTS.md终极指南:简单格式驱动60,000+项目的AI协作革命
AGENTS.md终极指南:简单格式驱动60,000项目的AI协作革命 【免费下载链接】agents.md AGENTS.md — a simple, open format for guiding coding agents 项目地址: https://gitcode.com/GitHub_Trending/ag/agents.md 在当今AI驱动的开发时代,AGENT…
看完就想试!Qwen-Image-Layered打造的图像分层效果展示
看完就想试!Qwen-Image-Layered打造的图像分层效果展示 你有没有遇到过这种情况:好不容易生成了一张满意的AI图片,结果想换个背景色就得重来一遍?或者人物姿势不错,但衣服颜色不对,只能整体返工࿱…