擅长:python、mysql、java
<h2>管理连接的工作守护程序</h2>
<p>您的图片当前看起来像:</p>
<pre><code>user -----------> webserver <--------[1]--> 3rd party DB
connection [1] is expensive.
</code></pre>
<p>您可以通过以下方法解决此问题:</p>
^{pr2}$
<p>工作守护进程将连接到第三方数据库并保持连接打开。这意味着不需要支付每个连接的费用。任务队列将是进程间通信,将工作分派给守护进程,并在第三方数据库中执行查询。在处理方面,web服务器应该尽可能轻,并让工人完成昂贵的任务。在</p>
<h2>使用apache+modwsgi预加载</h2>
<p>实际上,您可以<code>preload</code>并在第一个请求之前完成昂贵的连接。这是用<a href="https://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIImportScript" rel="noreferrer">^{<cd2>} configuration directive</a>完成的。我不记得有一个预加载+分叉配置是否意味着每个请求都已经打开了连接并共享它;但是由于您有大部分代码,这可能是一个简单的实验。在</p>
<h2>uwsgi预压</h2>
<p><code>uwsgi</code>也支持预加载。这是用<a href="http://uwsgi-docs.readthedocs.org/en/latest/PythonDecorators.html" rel="noreferrer">the ^{<cd4>} directive</a>完成的。在</p>