【问题标题】:Flush slow after update (Doctrine ORM + Symfony 2)更新后刷新慢(Doctrine ORM + Symfony 2)
【发布时间】:2014-12-15 06:35:00
【问题描述】:

我使用的是 Symfony 2.3 和 Doctrine ORM 2.4。 更新 Symfony 到 2.6 和 Doctrine ORM 到 2.5 后,刷新操作真的很慢。我发现问题出在UnitOfWork 中的函数computeChangeSets() 中。 在生产系统上,我使用 redis 进行学说缓存,我也收到了错误 RedisException "Redis server went away"。如果我签入控制台,redis 服务器正在工作。

我在 config.yml 中的开发设置:

doctrine:
    dbal:
        default_connection: default
        connections:
            default:
                driver:         %database_driver%
                driver_class:   %database_driver_class%
                host:           %database_host%
                port:           %database_port%
                dbname:         %database_name%
                user:           %database_user%
                password:       %database_password%
                options:        %database_options%
            admin:
                driver:         pdo_pgsql
                host:           %database_host%
                port:           %database_port%
                dbname:         %database_name%
                user:           %database_user%
                password:       %database_password%
                options:        %database_options%
     orm:
        auto_generate_proxy_classes: %kernel.debug%
        default_entity_manager: default
            default:
                entity_listener_resolver: %entity_listener_resolver%
            admin:
                connection: admin

和生产:

doctrine:
    orm:
        entity_managers:
            default:
                metadata_cache_driver:  redis
                query_cache_driver:     redis

【问题讨论】:

    标签: symfony orm doctrine-orm redis flush


    【解决方案1】:

    这是解密的问题。我们对数据库中的一些数据使用加密。因此,当调用 EventListener 时发生解密时,它确实会减慢进程。为了解决这个问题,我们没有通过实体(而是作为数组)获取数据,因此没有调用事件监听器。

    PS:工作慢与升级无关。

    PS2:Redis 的问题仍然存在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 2018-12-01
      • 2022-01-11
      相关资源
      最近更新 更多