mysql并行效率提升

下面是一个并行读取mysql数据库表的测试程序,测试结果发现,读取10个表,1个个读取,和并行读取10个,效率一样,甚至并行读取还慢很多,这是为什么?

python 复制代码
con = get_db_conn()
results = {}
pool = multiprocessing.Pool(processes=multiprocessing.cpu_count())
for i in table_list:
        sql = f"select * from {i}"
        results[i]=pool.apply_async(func=query_db,args=(sql,))
pool.close()
pool.join()

检查一下mysql后端:

原来啊,这个outgoing network traffic一直上不去,从数据库读取出来的数据,发不出去,也就返回不了给客户端,也就是说,数据都堵在网络外发上面了。即便并行把所有数据读出来了,还是被网络外发给卡住了。

解决办法:

  1. 提高网络带宽,你会发现这个outgoing network迅速就提上来了,然后并发也提上来了。

  2. 如果是测试程序和mysql在同一台机器上,千万别用mysql的外网ip来连接,用localhost或者192开头的内网ip。

相关推荐
@Mike@4 小时前
13-数据库学习笔记(查询执行处理模型)
数据库·笔记·学习
弈栈录4 小时前
MySQL 事务、索引与锁:后端开发必须掌握的数据库基础
数据库·后端
9624564 小时前
餐饮 SaaS 优惠券系统架构演进(三):优惠计算引擎——商品级计价、冲突策略与优惠分摊
java·数据库·spring boot
染指11104 小时前
135.Agent-多Agent框架-LangChain多智能体(SubAgents子代理)
数据库·人工智能·设计模式·langchain·agent·agents
vx_Biye_Design4 小时前
springboot宠物领养与救助平台64334-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·mysql·课程设计·宠物
Elastic 中国社区官方博客4 小时前
错误最多的服务运行正常:使用 ES|QL 从日志进行根因分析
大数据·运维·数据库·sql·elasticsearch·搜索引擎·全文检索
做运维的阿瑞5 小时前
mysql数据库视图笔记:创建、修改、删除与适用场景
数据库·笔记·mysql
Seraphina365 小时前
DVWA(SQL Injection-High,XSS Reflected-Medium,XSS Stored-Medium)
数据库·经验分享·sql·网络安全·xss
@Mike@5 小时前
12-数据库学习笔记(五种连接算法)
数据库·笔记·学习
Omics Pro5 小时前
之江实验室NAR|虚拟细胞3阶段训练范式
数据库·人工智能·算法·机器学习·自然语言处理