pymongo连接超时的做法
来源:互联网 发布:spark编程模型 编辑:程序博客网 时间:2024/04/28 15:05
通常我们连接mongo数据库会这样做:
client = pymongo.MongoClient(host, port)
但是会发现一个问题,如果mongo连接不上,会在这里阻塞很久。解决办法可以看官方文档http://api.mongodb.com/python/current/api/pymongo/mongo_client.html#pymongo.mongo_client.MongoClient
MongoClient提供了一个serverSelectionTimeoutMS选项,从这里我们可以看到默认是30s连接等待,难怪连接不上卡这么久。
def connect(self, host, port): count = 0 while True: self.client = MongoClient(host, port, serverSelectionTimeoutMS=3) try: self.client.admin.command("ping") except ConnectionFailure, err_msg: log.error(err_msg) count = count + 1 else: break if count == 3: return False return True
优化后,我们可以快速知道是否连接成功,并且尝试3次,不用阻塞30s这么久
阅读全文
0 0
- pymongo连接超时的做法
- pymongo连接超时的做法
- pymongo连接mongodb的replset
- IOS超时的另一种做法
- IOS超时的另一种做法
- PyMongo游标超时问题
- Python连接pymongo演示
- pymongo连接mongodb3.4.7
- Mongoengine与pymongo连接Mongodb时的区别
- Socket的读取超时与连接超时
- pymongo(1) pymongo的基本使用
- 连接服务器超时的Demo
- Mysql连接超时的问题解决
- curl连接超时的问题
- mysql连接超时的问题
- mysql的连接超时设置
- 双绞线的连接以及做法详解
- 局域网连接SQL的正确做法
- 梳理篇-字体替换
- maven总结(含详细的maven安装步骤)
- 【Film】黑客帝国
- 练习4: 求一个n阶方阵对角线元素之和。
- HDU 4501 小明系列故事——买年货(三维背包)
- pymongo连接超时的做法
- 使用MyEclipse反向工程生成映射关系
- Java基础基础之数组和集合(1)
- 随机产生十个1000以内的随机整数
- PAT1018Public Bike Management (30)
- Java并发编程:线程间协作的两种方式:wait、notify、notifyAll和Condition
- android studio 项目内部依赖 jar包生成
- 【2017.11.15】色彩的奥秘
- c语言:代码实现折半(二分)查找