为什么 php 脚本速度变慢?

2024-04-14

我正在编写迁移脚本,该脚本从一个 MySQL 数据库中选择数据并通过原则导入到另一个 MySQL 数据库中。问题是,在创建每个实体块之后,我的脚本速度就会变慢。

导入前 100 篇文章大约需要 5 秒,接下来的 100 篇文章需要 7 秒,接下来的 10 秒,依此类推。这确实是个大问题,因为我需要导入大约 1,500,000 篇文章。


我发现 php >=5.3 有垃圾收集器清理器。因此,当我导入大量文章时,我会调用gc_collect_cycles(); http://www.php.net/manual/en/function.gc-collect-cycles.php清除脚本不再需要的所有实体的内存。脚本不再变慢!

如果您使用框架,请检查它是否有自己的缓存系统。 如果您使用的是主义,请关闭 SQL 记录器

/** @var $em EntityManager */
$em = $this->getContainer()->get('doctrine')->getEntityManager();
$em->getConnection()->getConfiguration()->setSQLLogger(null);

然后在导入每个块后清除学说缓存

$em->clear();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 php 脚本速度变慢? 的相关文章

随机推荐

  • Django项目中大量页面如何组织分页?

    我有一个view py产品列表 from django shortcuts import render get object or 404 from models import ProductCategory Product Product
  • VB.net中是否有像SQL中那样的IN运算符

    是否有类似的函数或运算符 If RoleName in Val1 Val2 Val2 Then Go End If 代替 If RoleName Val1 Or RoleName Val2 Or RoleName Val2 Then Go
  • 有人可以解释这种行为吗?只需两行代码[重复]

    这个问题在这里已经有答案了 请解释一下这个片段 include
  • Bulbflow:neo4jserver Graph 和 neo4jserver Neo4jclient 之间的区别

    我现在正在尝试学习如何连接到 Neo4j 服务器并使用 Python 中的 Bulbflow 在其上运行 Cypher 查询 我不明白的是连接到 neo4j 服务器的两种可能性之间的区别 1 Graph http bulbflow com
  • 包含 std::string 常量的类

    所以我目前正在使用 C 进行一个学校项目 我对此并不熟悉 我想创建一个类 包含我所有的常量 字符串 整数 双精度 自己的类 我正在尝试这个 这在 Java 中一直对我有用 class Reference Picture Paths publ
  • 使用 TensorFlow 对象检测输出分数、类别和 ID 提取

    如何提取由用于对象检测的 Tensorflow 模型生成的图像中检测到的对象 对象类别 对象 ID 的输出分数 我想将所有这些详细信息存储到单独的变量中 以便以后将它们存储在数据库中 使用与此链接中找到的相同的代码https github
  • 两个日期之间的输出 mysql [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我需要像这样在MYSQL中输出 记录
  • 在 mongodb 中创建安全数据库

    我想在 mongodb 中创建安全的数据库 安全意味着应用程序必须传递用户名 密码才能连接到我的 mongodb 数据库 来自 Mongo Java 教程 MongoDB 可以在安全模式下运行 其中通过名称和密码身份验证控制对数据库的访问
  • 模拟Android AssetManager

    我有一段代码接受 Context 并将该上下文传递给私有方法 私有方法调用 getAssets open 来读取我的应用程序的资产文件夹中存在的文件 public void methodA Context ctx throws IOExce
  • 将服务器端 MVC 与 Backbone.js 相结合

    我将 NET MVC 用于所有服务器端逻辑并提供初始页面 但我的应用程序在客户端非常繁重 因此我采用了 Backbone JS 事实证明它非常有用 但我不确定如何构建我的系统以整合这两种技术 在我看来 我有两个选择 在服务器端从 MVC 中
  • ios中如何将字节数组转换为图像

    今天我的任务是将字节数组转换为图像 首先 我尝试将图像转换为字节数组 为了将图像转换为字节数组 我们首先要做的就是转换该特定图像 UIImage to NSData 然后我们将其转换为NSData到字节数组 这里我将给出示例代码 只需浏览
  • 为什么enable_shared_from_this有一个非虚拟析构函数?

    我有一个宠物项目 我用它来试验 C 11 的新功能 虽然我有使用 C 的经验 但我对 C 还很陌生 为了训练自己采用最佳实践 除了大量阅读之外 我启用了一些严格的编译器参数 使用 GCC 4 4 1 std c 0x Werror Wall
  • Twig 中的 {{ exception.message }} 不渲染 HTML

    我有这个控制器在哪里 Exception被提出了 我还没弄清楚哪个SF2Exception尚未使用 在一定条件下 就这个
  • Django - 将参数传递给 CBV 装饰器的正确方法?

    文档功能应用装饰器的不错选择 例如login required基于类的视图 https docs djangoproject com en dev topics class based views intro decorating the
  • ANDROID CAMERA:获取参数失败(空参数)

    您好 我仅在棒棒糖以下的操作系统版本中遇到此问题 对此进行了大量搜索 但没有找到正确的解决方案 我认为问题出在操作系统版本上 它在 5 中工作正常 我的代码是 private void setCameraPhotoQuality Camer
  • 设置 li 标签内 的字体颜色

    我的标记如下所示 div class c1 li class c2 a href blah a li div 我希望文字 blah 是红色的 c1 在其他地方使用 所以我想在不影响其他标记的情况下尽可能深入 在您的 css 文件中使用此样式
  • C#:绘制自己的条形图

    我正在尝试通过绘制一个简单的条形图C 但我从未尝试过 Graphics 和 Drawing 命名空间 我想生成一个 开始 和 结束 图形 然后以某种方式重复图像 以显示 长度 但我不知道如何做到这一点 如果您能指出正确的方向和 或您有示例代
  • 尽管包含必需的标头,但仍出现“‘sockaddr_in’未声明(在此函数中首次使用)”错误

    include
  • 如何将列表转换为可枚举

    我的以下代码有问题 public IEnumerable
  • 为什么 php 脚本速度变慢?

    我正在编写迁移脚本 该脚本从一个 MySQL 数据库中选择数据并通过原则导入到另一个 MySQL 数据库中 问题是 在创建每个实体块之后 我的脚本速度就会变慢 导入前 100 篇文章大约需要 5 秒 接下来的 100 篇文章需要 7 秒 接