猿问

Azure VM 似乎终止了长时间运行的 MySql 查询

在使用 MySql (Aurora) 时,我开始注意到奇怪的查询丢失了,工作人员只是永远挂着。经过一些调查,在 AWS 中运行的相同代码似乎没问题,但在 Azure 上它只是永远挂起!

似乎原因是 Azure 只是杀死空闲的连接(如长时间运行的查询)。请注意,我可以在前面甚至没有负载平衡器的 VM 上重现此内容。

这可以通过以下方式重现 date && time mysql -h$SERVER -u$USER -D mydb -p$PASS -e "SELECT SLEEP(260);"

请注意,我用 240、250 对其进行了测试,在 260 时它会死掉。但不只是死,挂,永远!看起来 Azure 甚至懒得告诉套接字死掉所以 MySql 客户端挂起。

我们有从 NodeJs 和 Python 运行的查询,所以我需要一个解决方案,如果可能的话,可以同时使用这两种方式。

在这里看到一个很好的例子:https : //imgur.com/gallery/FCV8ZWb(注意我必须在另一个会话中杀死 mysql 才能真正发布)


心有法竹
浏览 197回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答