我正在使用Python将大量Twitter数据流式传输到MySQL数据库中。我预计我的工作会持续数周。我有与twitter API交互的代码,并给我一个产生列表的迭代器,每个列表对应一个数据库行。我需要的是一种维持持续数据库连接数周的方法。现在,当我的连接丢失时,我发现自己不得不重复重启我的脚本,有时是因为重启了MySQL。
使用mysqldb库,捕获异常并在必要时重新连接是否最有意义?或者是作为sqlalchemy或其他包的一部分已经制定了解决方案?任何想法都赞赏!
答案 0 :(得分:0)
我认为正确的答案是尝试处理连接错误;听起来你只是为了这个功能而只是在一个更大的库中,而尝试和捕捉它可能是它的完成方式,无论它处于什么级别的堆栈。如果有必要,你可以多线程这些东西,因为它们可能是IO绑定的(即适用于Python GIL线程而不是多处理)并将生产和消耗与队列分离,这可能需要一些加载数据库连接。