绕过Bluehost的数据库连接限制(Django/发芽网)

作者:半瓶墨水   链接:http://www.2maomao.com/blog/work-around-max_user_connections/

最近个把月,发芽网的访问量有所上升,直接后果就是数据库报错,说我的数据库用户链接数超过了max_user_connections

联系了一下bluehost,客服跟我说,最近他们设置了max_user_connections为15, 建议我多用cache方式减少数据库连接,并根据我用的是Django推荐了django-staticgenerator,我看了一下,还不错,但是最近太忙了,时间上估计来不及。

bluehost抱怨了一下连接数太少,顺便想到了一个暂时的解决方案:
1. 在settings.py里面加入了一个DATABASE_USERS的新变量,里面放上很多个用户名,这些用户对发芽网的数据库都有同样的访问权限,同样的密码
2. 在后台的python2.6/lib/site-packages/django/db/__init__.py里面,把获取数据库用户的赋值改成了random.choice( settings.DATABASE_USERS )

暂时来看,应该还是有点效果了,先观察几天再说。

BTW: 给发芽网添加了OpenID支持以后,到现在已经有80个用户使用了OpenID,多数都是Google的,第二位的是Yahoo,呵呵这个结果还不错。

6 条评论 发表在“绕过Bluehost的数据库连接限制(Django/发芽网)”上

  1. f说道:

    这个方法太有喜感了……可是

    max_user_connections
    这个参数,不是指mysql可以容纳的最大连接数么?至少我一直是这么理解的。
    难道是说每个mysql user的最大连接数?

  2. 飞雪飞说道:

    bluehost 用dede 的时不时就说超标!是dede 的错还是bh!

  3. cnDenis说道:

    我是用myOpenID的,结果我的用户名成乱码了,能不能设定一个友好的用户名?

  4. 半瓶墨水说道:

    @cnDenis 对不住了xd,注册的时候有改名字的机会的,注册之后改名字的功能没做。。。

  5. 好高端看不懂啊

留下回复