【问题标题】:Can doctrine have multiple connections to a db?教义可以与数据库有多个连接吗?
【发布时间】:2014-03-04 15:02:43
【问题描述】:

我在我的 symfony 应用程序中使用了 gearman 工人。工作人员使用 symfony 服务,如教义和其他服务。我可以同时运行多个工人。我想知道当一次获得多个查询时,教义如何处理数据库查询(每个工作人员同时执行一个查询)。是否可以与 db 建立不同的连接,以便我的 gearman 工作人员可以将每个连接用于特定目的,例如一个连接从 db 读取和一个连接写入 db?

谢谢

【问题讨论】:

    标签: php mysql symfony doctrine-orm gearman


    【解决方案1】:

    您的每个工人都是自己的进程,具有自己的 EntityManager,每个都有自己的连接。因此,默认情况下,每个工作人员只有一个连接。

    就“一次多个查询”而言,这就像网络绑定进程所发生的情况一样。从数据库的角度来看,它是完全一样的。多个同时连接执行查询。

    worker 的棘手之处在于,它们的寿命往往比 Web 绑定进程(每个传入的 HTTP 请求都会重新初始化)长得多。您需要特别小心,闲置的工人可能会出现连接超时,因此当他们最终找到一份工作时,他们会爆发。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-11
      • 1970-01-01
      • 2016-01-13
      • 1970-01-01
      • 2010-11-03
      相关资源
      最近更新 更多