◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
在 Python 客户端实现 SQL 查询超时
在使用 Django ORM、Peewee、SQLAlchemy 等 ORM 框架;PyMySQL 等驱动库;FastAPI、Flask、Django 等应用框架;Uvicorn、Gunicorn 等服务器时,为了防止 SQL 查询时间过长带来的安全隐患,我们需要设置一个查询时间上限。
如何优雅地实现此功能?一种方法是使用 PyMySQL 的以下参数:
这些参数分别指定数据库连接、读取操作和写入操作的超时时间。以秒为单位。如上例所示,超时时间设置为 60 秒。这样,任何持续时间超过 60 秒的 SQL 查询都会被终止。
立即学习“Python免费学习笔记(深入)”;
注意,设置超时时间要求在客户端进行,不能修改 MySQL 服务器,因为数据库可能是供多人使用的。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。