我在 Postgresql 8.1.21 上运行 Django 项目(使用 Django 1.1.1、Python2.5、psycopg2、Apache2 和 mod_wsgi 3.2)。我们最近遇到了这个可爱的错误:
OperationalError: FATAL: connection limit exceeded for non-superusers
我不是第一个反对这个的人。关于这个错误有很多讨论,特别是关于 psycopg,但其中大部分集中在旧版本的 Django 和/或提供涉及在 Django 本身中编辑代码的解决方案。我还没有找到关于如何解决 Django ORM(或 psycopg,在这种情况下真正负责的那个)留下开放 Postgre 连接的问题的简洁解释。
只需connection.close()
在每个视图的末尾添加就可以解决这个问题吗?更好的是,有没有人最终解决了这个问题并解决了这个错误?
编辑:我们后来将 Postgresql 的限制提高到 500 个连接;这防止了错误的出现,而是用过多的内存使用代替了它。