【发布时间】:2016-04-24 18:21:20
【问题描述】:
搜索参数中的用户键,然后我们向数据提供者发出请求并将用户重定向到加载页面。来自数据提供者的响应命中回调 url,在这种情况下,我们解析结果并将大约 200 行存储到数据库中。同时加载页面使用ajax每秒查询数据库,当结果全部存在时,我们将结果显示给用户。
问题是插入 mysql 数据库太慢了。我们知道数据提供者的响应会在几秒钟内返回,但是脚本的处理和将行插入数据库的速度非常慢。我们确实使用多行插入。
有什么改进的建议吗?仅供参考,代码非常长……这就是为什么现在不显示的原因。
【问题讨论】:
-
有多慢??插入 200 行,它也不会那么快。
-
扩展、数据库引擎、索引?插入前有预处理吗?连接/断开每个插入?机器功率够吗?我猜还有很多其他的事情要考虑。
-
@Plum 大约需要 15-25 秒。在开发过程中,它的速度要快得多,大约 2-3 秒。
-
@frz3993 请求和响应是一个 XML 文件。点击 php 回调脚本。插入前有预处理。由于它是多行插入,我们只对 mysql 数据库进行一次。
-
你检查脚本执行时间确定是插入导致的吗?并且您可以启用慢查询日志并检查是否有任何查询太慢。
标签: php mysql ajax search insert