Django 操作错误 : SSL SYSCALL error: EOF detected

标签 django postgresql rds postgresql-9.6

我正在运行的应用程序使用 Django 1.10 作为连接到 Postgres 数据库(由 AWS RDS 管理)的 ORM。

有时,我会收到很多OperationalError: SSL SYSCALL error: EOF detected 异常,然后一切恢复正常,就像从未发生过一样.

我认为它与错误有关 unexpected EOF on client connection with an open transaction 正如我在日志文件中看到的那样,但我不确定。

更多有用信息:

  • 这不是防火墙问题,因为我们只使用 AWS 安全组,它们只能根据端口阻止事物。
  • 获取此异常的查询非常简单,通常需要毫秒返回。
  • 在此剧集中,内存、CPU 和磁盘空间看起来像往常一样。
  • 我怀疑这不是表锁定问题,因为它发生后一切都会恢复正常,我不能肯定地说,因为 Postgres 不显示旧锁,只实时显示当前锁。

  • 我的Postgres引擎版本是9.6.8

  • 我们看到数据库中有很多空闲 连接。有关系吗?

最佳答案

该错误非常普遍,它只是表示“TLS 通信出现故障”。

我将列出一小部分潜在原因,但不保证完整性。

  • 这可能是防火墙问题(您排除了该选项)。

  • 这可能是 TLS key 重新协商的问题。

    这导致了不同 OpenSSL 版本和客户端驱动程序的各种问题,并在 PostgreSQL 9.5 中被放弃,所以只有当您使用旧的且未打补丁的服务器版本时,这才会是问题。

关于Django 操作错误 : SSL SYSCALL error: EOF detected,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56793603/

相关文章:

python - 如何使用 Django 安装自定义 SQL

django - 定制登记表。确认密码

arrays - Postgres 8.4.3 : How do convert names and string of names to normalized numerical ids using unnest

sql-server - 对于 AWS 上的引擎错误,DBName 必须为空 - RDS

ios - AFNetworking 的状态 304 仍在获取数据

jQuery; Django ;解析http响应

ruby - 使用 Sequel 设置主键初始值

sql - 保持列与 Postgres 中的另一列同步

mysql - 如何在 AWS DMS 中为源数据库设置时区?

java - Springboot连接RDS抛出异常 "Caused by: java.security.cert.CertificateExpiredException: NotAfter: Fri Mar 06 00:54:04 EAT 2020"