Sha*_*tle 6 python mongodb pymongo bottle
在与各种各样的事情进行斗争之后,我终于能够在Apache上运行BottlePY并运行MongoDB驱动的站点.我习惯于运行Django应用程序,因此我将在我的问题中与此相关.
问题
每次通过BottlePY加载页面时,需要重新验证与MongoHQ.com上的MongoDB数据库的连接(意味着它可能需要重新连接).
我找到了什么
我将一个db.keep_alive()函数附加到每个模型函数的顶部,以便在运行任何mongodb查询之前,它会尝试运行一个简单的查询.如果失败,则捕获OperationFailure或AutoReconnect错误,然后调用该db.authenticate()函数.在重新验证之后,我将它添加到日志数据库中以监视重新验证所需的频率.目前,它需要在每个页面加载时重新进行身份验证(这需要运行查询).这不对.
与Django的区别
我在django中使用了相同的概念,并且发现db连接只需要在没有运行查询10-15分钟后进行身份验证.
我不明白为什么在django中创建一个pymongo连接会不同于在瓶子中创建一个pymongo连接,因为我使用相同的驱动程序,函数和方法.我也没有使用任何ORMS或类似的东西.
版本
我很感激帮助!
更新:一位朋友能够快速查看并注意到以下内容可能有助于回答我的问题.
似乎每个请求都启动一个新的Python进程,而不是Django,其中一个进程长时间保持运行.
| 归档时间: |
|
| 查看次数: |
1602 次 |
| 最近记录: |