对于大量的测试数据,使用多进程时(例如8个进程),最好使用queue来消费数据,不要将测试数据分为8个list,分别送入不同的进程中,因为这样可以避免极端情况出现。例如,每个测试数据处理起来耗时不一样,你刚好把耗时比较长的数据分了同一个list,就会导致其他的进程也会一直等待该进程的完成。
同时,对于大量的测试数据,要避免使用进程池,因为可能会出现资源瓶颈。例如,我的测试数据需要对数据库进行请求,如果我使用进程池,那么我的每次请求方法都会向数据库申请请求建立一个tcp连接,并且这些连接是不会复用的,时间一长,数据库的最大连接数就会好紧,就无法向数据库发送检索请求。最好的方法,就是我们创建n个进程,每个进程中都包含一个请求方法,请求方法中,使用连接池的方式向数据库发送请求,当超过连接池的数量限制时,会将之前的连接进行复用,可以把连接池数量得到控制
标签:感悟,请求,python,数据库,测试数据,进程,连接池 From: https://www.cnblogs.com/chentiao/p/18208520