Mysql 称为并行的存储过程按顺序返回结果
我们用MYSQL编写了存储过程 如果从一个线程调用存储过程,则返回结果需要2.5秒 如果从3个线程调用存储过程,则返回结果大约需要8.5秒。每个线程占用的时间几乎相同Mysql 称为并行的存储过程按顺序返回结果,mysql,database,stored-procedures,Mysql,Database,Stored Procedures,我们用MYSQL编写了存储过程 如果从一个线程调用存储过程,则返回结果需要2.5秒 如果从3个线程调用存储过程,则返回结果大约需要8.5秒。每个线程占用的时间几乎相同 我们正在使用MyISM,如果我们需要为并行执行的过程进行任何设置,请告诉我。我们只是在存储过程中检索(选择)未完成更新/插入增加从MySQL中提取数据的线程数量不一定会增加吞吐量。您在多个线程中执行相同的查询,这增加了上下文切换的开销 要利用线程,您需要利用空闲时间(实际空闲时间),如输入/输出/网络延迟。 例如: 线程从MyS
我们正在使用MyISM,如果我们需要为并行执行的过程进行任何设置,请告诉我。我们只是在存储过程中检索(选择)未完成更新/插入增加从MySQL中提取数据的线程数量不一定会增加吞吐量。您在多个线程中执行相同的查询,这增加了上下文切换的开销 要利用线程,您需要利用空闲时间(实际空闲时间),如输入/输出/网络延迟。 例如:
- 线程从MySQL中提取一些数据并开始处理,比如通过接口发送通知。如果该接口是同步的,则线程被卡住
- 让更多线程为您完成这项工作,即从DB(空闲)中提取数据并进行处理
如果没有这样的延迟/空闲线程只会带来开销。即使同时请求也会进行上下文/进程切换。从数据库中提取数据也是如此。多出1秒钟是上下文切换的开销。当MySQL空闲且所有现有线程忙于处理从MySQL提取的一些数据时,使用更多线程。当执行3个线程时,每个线程需要8.5秒。->总共8.5*3您的意思是线程需要25.5秒,顺序调用只需要7.5秒?那更糟。。!