0

我的应用程序主要有两个部分,

  1. 用 Angular 编写的用户界面,使用 Django python 后端。
  2. 重映射减少类的过程。

两者都使用 postgres 进行查找,所以我怀疑我是否对两者都使用相同的连接池,当我的 map reduce 由于大量查找而运行时,由于没有可用的连接,我的其他应用程序将无法工作。有什么解决方法吗?(避免 postgres 本身在积压中)

PS:我正在使用 pgbouncer 进行池化

4

1 回答 1

1

最简单的方法是将两个部分分开。至少在连接资源方面。(不要求例如内存消耗和 gc 是否会从重组中受益)

您可以使用以下方法之一实现此目的:

  1. 使用两个单独的池,每个部分一个。
    这样,您可以根据每个部分的连接要求设置池。

  2. 更改您的代码以维护其他部分的足够“免费”资源。
    这是相当乏味的,并且仅在资源需求需要根据算法的内部状态进行细粒度控制时才有用。

通常你会选择建议 1。

于 2016-03-01T09:22:13.360 回答