javascript - 如果网站刷新,则停止 php 调用的 mysql 服务器运行

标签 javascript php jquery mysql web

我有一个正在运行的本地网站,它将通过 html 表单给出的输入查询 mysql 数据库。表单值通过 jQuery 发送到 php 来调用查询。如果网站刷新,有没有办法向 mysql 服务器发送命令来终止查询?

目前,如果我刷新,最后一个 mysql 调用仍然会运行,因此网站将被锁定,直到该查询完成。

编辑:为了提供更多关于该网站的背景信息,它是一个本地网站,仅基于大型数据库(3 个表都在1 - 5 百万条记录范围)。我指的“锁定”是无法放弃查询并尝试更有效的查询(即会更多地限制我的结果)。

最佳答案

也许有(它通常涉及从 MySQL Processlist 中选择最后一个进程 ID 并对该进程 ID 发出 KILL QUERY),但我认为您应该首先尝试解决一些问题。

首先,为什么一个查询会“锁定”一个网站?我可能嗅到了设计缺陷。

JavaScript 可以用来让浏览器在刷新时“命中”服务器,但这只是添加另一个 AJAX 调用,大概还有另一个 MySQL 查询(与进程列表有关)和需要编写更多 PHP 来处理 AJAX 调用、进程列表查找和 KILL QUERY 查询...

我建议你尝试让服务器/MySQL 查询更高效,这样无论浏览器是否刷新,你都不必飞快地翻转。至于浏览器安全性,您可能可以使用 PHP 或 JavaScript 对重复刷新实现某种“洪水限制”......

关于javascript - 如果网站刷新,则停止 php 调用的 mysql 服务器运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27297005/

相关文章:

javascript - 从 JSON 在 Jquery 中获取正确的浮点值

javascript - 防止浏览器自动填写表单域

javascript - Angular 6 正确初始化自定义输入组件

javascript - $scope 值不会在其他 Controller 中更新

PHP - 计算在 foreach 中显示了多少结果

php - 从表中删除一列,用 PHP MYSQL 更新另一列

php - 基于访问者地理位置的动态样式表

javascript - asp-classic 在 Internet Explorer 中不工作 Request.ServerVariables ("HTTP_REFERER")

javascript - JS : Set animation duration for change of src

php - 同一目录包含在使用 PHP 的 Fedora 服务器上失败