9月 23

python到mysql 2006问题解决

  tornado和Django框架都是使用MySQLdb,在长时间不与数据库有交互,如采集、SQL运行数据过大而数据库等待时间过短等,这时会报“Error 2006: MySQL Server has gone away”错误。收集了网上的三个解决方案是,
  一、修改数据库的参数wait_timeout,interactive_timeout到2880000,
  二、在每次连接时做判断,如果报错将再连接一次(http://xulizhao.com/blog/python_db)。

class DB:
    conn = None
    def connect(self):
        self.conn = MySQLdb.connect(localhost,root,pass,test)
    def cursor(self):
        try:
            return self.conn.cursor()
        except (AttributeError, MySQLdb.OperationalError):
            self.connect()
            return self.conn.cursor()

  三、定时进行连接,以防断开

from tornado.ioloop import PeriodicCallback

#torndb.Connection(host, database, user=None, password=None, max_idle_time=25200, connect_timeout=0, time_zone='+0:00')
db = torndb.Connection(db_ip, db_database, db_user, db_pass, db_conn_time)
# https://github.com/felinx/poweredsites/blob/master/poweredsites/db/mysql.py
# ping db periodically to avoid mysql go away
PeriodicCallback(db.query(show variables), 3600*4*1000).start()

我的测试,第一种方法比较好用,但是在某些情况下会造成其它问题。第三种效果不理想,需要继续研究。第二种正在试验中。

9月 16

帮助强者同情弱者

帮助强者同情弱者。
强有很多方面,财力强大,做事锲而不舍的精神,超出常人的毅力等等。二弱更多的是让人看到我需要什么。
也许这就是强者恒强的道理,越是强身边就会汇聚一群更强的朋友。弱者也有强于他们的一面,也会得到帮助,只是更多的分量是同情。

9月 12

cosplay-20130911

  虽然进入秋天但是天气还是有点热,钻进高峰期下班的地铁里,瞬间感到首都人民的热情。就像传送带上压缩饼干一样,循规蹈矩的回到家里。
  小糖豆围前围后的“招呼”着。待我换好衣服,刚刚坐在沙发上,小糖豆就上来用两个小手抓住我的耳朵向两边拽。正在心理纳闷着,这是什么新游戏吗?这个只能说一两个字的小糖豆喊着“图图”。哦,看来是看《大耳朵图图》看看上瘾了。我怎么能像这个图图呢?

图图

图图