2015-09-17 63 views
-1

我正在Python中編寫腳本來聆聽Twitter Streaming API,它將跟蹤特定關鍵字並使用MySQLdb將它們插入到MySQL數據庫中。我不確定選擇哪種方式:我應該保持一個數據庫連接在MySQLdb中打開嗎?

  1. 對於每個傳入的tweet,打開db連接,插入到db,然後關閉連接。
  2. 打開數據庫連接並對傳入的推文執行插入命令,並且根本不關閉連接。

我覺得腳本每秒會收到1到10條推文。

+0

檢查第一個答案在這裏:http://stackoverflow.com/questions/880885/is-closing-the-mysql-connection-important總結,如果你沒有做任何處理,除了保存數據庫,請不要關閉連接 – Lucas

回答

0

它的種類取決於你的腳本應該如何運行,但它應該應該在某個時刻關閉連接 - 至少在進程死亡時關閉一次。假設這是一個長期運行的進程(守護進程等),最簡單的策略是使用「與」塊,以確保連接被關閉,即:

with MySQLdb.connect(**kw) as db: 
    while some_condition(): 
     do_stuff_with(db) 

,但你可能需要的東西多一點因爲MySQL往往涉及到close idle connections by itself

相關問題