- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个日程安排应用程序,允许用户使用每周模板批量创建事件。这是通过 AJAX
将模板类(class)发布到一个 PHP 文件
来实现的,该文件采用模板并将其复制所需的次数。它一次必须创建的事件数量可能在 200-800 之间,具体取决于。
我遇到的问题是这些查询需要很长时间才能完成,这会导致网站挂起,有时会在等待完成所有条目时超时。
一个简化的例子:
$events = array('valid array of all events and their details');
foreach($events as $event) {
$query = 'Valid SQL with individual event detaisl';
mysqli_query($connection, $query);
}
在现实中会有更多的事情发生,例如,计算开始和结束时间,从 junction tables
关联用户等。这将需要运行 200-800 次才能为每个创建一个条目模板制作的个人事件。
我将如何加快速度?
非常感谢任何见解!
更新:我已经尝试增加 SQL 实例的层级。它对所花费的时间没有任何影响。
最佳答案
需要考虑的一些建议:
为每个请求创建 200-800 个新数据库条目听起来有点过分。您的应用程序的逻辑和您使用的数据模型/结构可能会通过不一次创建所有事件而得到显着改进和优化,而是仅保存让您生成 800 个条目的设置以及一些会返回单个事件的代码如果需要,如果将来添加或更改了任何自定义(不是来自模板)信息,请单独保存。这可能需要对您的代码进行大量更改,可能值得也可能不值得(时间方面而非速度方面肯定会有所改善)。
正如评论中已经提到的,这可以被纳入一个单独的任务,向用户提供一些 UI 反馈,说明事件正在创建,然后另一个通知说明它现在已经完成。
通过查看您的代码,看起来(我对 PHP/mysql 不是很熟悉)在创建 800 个事件时您还单独联系了数据库 800 次(每次都在等待完成响应)。假设瓶颈出现在这些多个连接中,那么通过连接生成的查询并将它们一次性全部提供给数据库,您可能会实现一些性能改进。请参阅下面的示例(注意每个生成的查询末尾所需的分号和 mysqli_multi_query
函数允许一次发送多个查询):
$events = array('所有事件及其详细信息的有效数组');
$查询=“”;
foreach($events 作为 $event){
$query .= '带有单个事件详细信息的有效 SQL;\n';
}
mysqli_multi_query($connection, $query);
关于php - 慢查询 - GAE PHP 和 Cloud SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28423092/
在 GAE 中,我有一个应用程序将文件存储在 GAE blobstore 服务中。数据存储后,还应将其发送到未部署在 GAE 上的外部 Web 服务。我使用Java。 我的第一个想法是使用 JAX-R
我想找到一个用于验证用户、存储用户的 webapp 框架 并且具有jquery的ajax效果, 那么,你知道这个简单的框架吗? 谢谢 喜欢这个页面:http: //digu.com/reg 最佳答案
为了重新部署 GAE 应用程序,我目前必须在我用于部署的系统上安装 GAE 部署工具。虽然这个过程相对简单,但部署过程是一个手动过程,不能在防火墙后运行,并且部署工具必须安装在每台将用于更新 GAE
This链接显示 GAE 不支持开发服务器上的 cron 作业。那么我的其他选择是什么? 当用户的帐户截止日期已到时,我需要向他们发送电子邮件。 最佳答案 使用本地 cron 服务,并编写一个使用 c
我在运行 Maven GAE Plugin 的 gae:debug 目标时遇到问题.我收到的错误如下。有什么想法吗? 我用“mvn gae:debug”运行它。 [INFO] Packaging we
Google 刚刚宣布支持 App Engine 的 PHP 运行时。我有一个使用 Java 运行时开发的应用程序,它利用了 native App Engine 数据存储区。它目前用作移动客户端的后端
是否有一些前端允许管理员从 Google 应用引擎数据存储区插入、更新、删除记录以及创建修改和删除表,就像您在 mysql 上使用 phpMyAdmin 所做的那样??? 最佳答案 Google Ap
我正在以 GAE 为优势实现 PPO。以下代码是我根据OpenAI的基线实现计算GAE和返回的方式。 advantages = np.zeros_like(rewards) last_adv = 0
这是一个[python代码][1],我想知道它是否也可以用于GAE Java(当代码迁移时)。所以问题是,下面的 python 代码是否可以转换为 Java,而无需任何 Java 所没有的 pytho
当在 GAE 中收到一个 http 帖子时,我从另一个服务器下载一个 txt 文件,进行一些解析,然后返回信息。但是,当我更新这个 txt 文件并尝试通过 GAE 访问它时,似乎有延迟。这是一步一步的
当我运行 gae:run 时,它成功构建 jar 并启动服务器。但看起来服务器没有完全启动,因为我无法转到请求的页面。 当我使用 IDE(不是 maven gae 插件)和由 maven gae 插件
我知道有这样的插件可以在 vim 中调试 python:https://github.com/joonty/vdebug 我正在努力寻找调试 GAE 应用程序的方法,这可能吗?如果是这样,我应该采取什
我在 GAE 上部署了一个 webapp2 python 应用程序。有什么方法可以让我从 GAE 控制台探索源代码或更改项目文件。如果我只想更新已部署的应用程序上的单个 .py 文件而不是再次部署整个
我有一个 Google App 引擎应用程序,我希望它的工作方式有所不同,具体取决于它是在我的本地开发环境中运行(即使用 dev_appserver.py)还是在实际的 GAE 云中运行。 目前,我使
阅读 GAE NDB 数据存储的新文档: https://cloud.google.com/appengine/docs/python/ndb/modelclass#class_methods get
今天我第一次上传我的应用程序,当第一个请求进入以触发应用程序初始化时,它失败了。我已经在 Google GAE DEV 服务器上本地测试了所有内容,Google DEV 服务器和真正的 GAE 环境之
我正在使用 GAE 构建应用程序,并想为此使用 Django。哪个“补丁”更好? app-engine-patch 还是 django-gae-helpers?我指的是它们的功能和 future (其
使用 Google App Engine 标准 Python 2.7,我的dispatch.yaml 中有一个路径来指定“*/flex/*”类型的所有网址以路由到 Flex 服务。 调度.yaml调度
我需要一份关于使用 Flex+BlazeDS+Spring+GAE 的可读教程(在 GAE 数据存储中存储多个表)。有这样的吗? 最佳答案 你必须一步一步来: http://www.springsou
我们要重复 spring-boot-sample-gae 的指令一步一步,但我们仍然无法创建 WAR 文件,并出现以下错误消息: [错误] 无法在项目 gae-demo 上执行目标:无法解析项目 or
我是一名优秀的程序员,十分优秀!