Python+mysql遍历_python-如何快速遍历数据库
我有⼀个数据库,⾥⾯有1千万的数据,每条数据存放⼀个url,我要测试这个url是否是可以链接的,使⽤python实现,什么思路?使⽤twisted还是gevent?
如果使⽤gevent,如何动态添加url,⽐如我gevent的pool设置为100,在数据库中取出数据的时候如何遍历最⾼效?,
⽬测这个⼯作主要瓶颈在检查url是否正常(http code 2xx?),次瓶颈在从数据库读这10M条记录。
对于检查url的⼯作,可以通过gevent/twisted/多线程/多进程来并发,就像你说的pool设置到100。
对于从数据库读出记录,并⾏不见得⽐串⾏访问更快……
所以,开⼀个到两个reader从数据库读,开100个以上的checker去检查url就可以了。中间放⼀个queue⽤来通信。
是这样的结构: reader ---(写⼊)--> 队列 ---(读出)--> checker
⾄于队列⽤什么实现,不是很重要……因为瓶颈不在这⼉……
python怎么读的
从数据库读就很容易了,如果只有⼀个reader,就select * from table得到⼀个完整的数据集,遍历写⼊队列即可
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论