可重试读取
最后更新于
最后更新于
在本页面
可重试读取允许MongoDB驱动程序在遇到某些网络或服务器错误时,可以一次自动重试某些读取操作。
官方MongoDB驱动兼容MongoDB服务器4.2和以后支持重试读取。
有关官方MongoDB驱动程序的更多信息,请参阅 。
如果连接到MongoDB Server 3.6或更高版本,驱动程序只能重试读取操作。
官方MongoDB驱动程序兼容MongoDB服务器4.2和以后默认启用可重试读取。要显式禁用可重试读取,请在部署的中指定。
MongoDB驱动程序支持重试以下读取操作。列表引用了每个方法的通用描述。对于特定的语法和用法,请遵循该方法的驱动程序文档。
Collection.aggregate Collection.count Collection.countDocuments Collection.distinct Collection.estimatedDocumentCount Collection.find Database.aggregate
CRUD API读取操作.
Collection.watch Database.watch MongoClient.watch
更改流操作
MongoClient.listDatabases Database.listCollections Collection.listIndexes
枚举操作
GridFS操作由Collection.find
( 例如GridFSBucket.openDownloadStream
)支持
GridFS文件下载操作
也可以看看:
以下操作不支持可重试的读取:
传递给通用Database.runCommand帮助器的任何读命令,它与读或写命令无关。
译者:杨帅
校对:杨帅
在shell不支持重试读取。
对于Collection.aggregate
和Database.aggregate
,驱动程序只能重试不包括写阶段的聚合管道,如或。
MongoDB驱动程序可能包括对其他操作的可重试支持,比如帮助方法或包装可重试读操作的方法。根据 确定方法是否显式支持可重试读取。
可重试读规范:.
MongoDB可重试读取只做一次重试尝试。这有助于解决暂时的网络错误或,但不能解决持久的网络错误。
在重试读取操作之前,驱动程序使用read命令的原始执行。如果驱动程序不能选择使用原始读取首选项进行重试的服务器,则驱动程序返回原始错误。
驱动程序在执行服务器选择之前等待毫秒。可重试读取不会处理在等待后不存在合格服务器的实例。