【问题标题】:Stopping php-called mysql server from running if website is refreshed如果网站刷新,则停止运行 php 调用的 mysql 服务器
【发布时间】:2015-02-02 12:12:13
【问题描述】:

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

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

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

【问题讨论】:

标签: javascript php jquery mysql web


【解决方案1】:

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

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

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

我建议您尝试使服务器/MySQL 查询更高效,这样您就不必担心是否刷新浏览器。至于浏览器的安全性,您可能可以使用 PHP 或 JavaScript 对重复刷新执行某种“洪水限制”......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-28
    • 1970-01-01
    • 2015-03-22
    • 2017-06-14
    • 1970-01-01
    • 1970-01-01
    • 2015-08-06
    • 1970-01-01
    相关资源
    最近更新 更多