我正在设计ios应用程序的后端。后端有独立的数据库和应用服务器,分别在不同的机器上运行mysql和django。到目前为止,我已经以简单的方式将我的应用程序服务器与我的数据库服务器连接:我将应用程序服务器设置中的数据库主机更改为指向remore数据库服务器,并在数据库服务器配置文件中创建了一个新的远程主机,允许远程应用程序服数据库。一切正常,我决定采用这种设置进行生产。然后当我阅读Instagram工程博客时,我看到他们提到'Pgbouncer'来连接到他们的postgresql数据库服务器。这样的需要是什么?这是否只与性能有关,或者这是一种生产友好的方法,可以在数据库和应用服务器之间进行通信。我的一般方法是否太过业余?
答案 0 :(得分:0)
你的方法根本不是业余爱好者。在您的情况下,保镖的目的是消除django处理的每个请求上发生的连接时间。例如,在AWS服务器上托管的Heroku上,这可能会占用每个请求40-50毫秒。
现在,如果你有一个主/从设置或类似的东西,连接池也会为你提供故障转移功能(只是一个例子)