类:Mongo::Server
- 继承:
-
对象
- 对象
- Mongo::Server
- 扩展方式:
- 可转发
- 定义于:
- build/Ruby-driver-v 2.19 /lib/mongo/server.rb ,
build/Ruby-driver-v 2.19 /lib/mongo/server/monitor.rb,
build/Ruby-driver-v 2.19 /lib/mongo/server/connection.rb,
build/Ruby-driver-v 2.19 /lib/mongo/server/description.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/app_metadata.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/push_monitor.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/connection_base.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/connection_pool.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/connection_common.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/monitor/connection.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/pending_connection.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/description/features.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/monitor/app_metadata.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/app_metadata/platform.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/app_metadata/truncator.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/push_monitor/connection.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/app_metadata/environment.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/server/round_trip_time_averager.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/connection_pool/populator.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/description/load_balancer.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/server/connection_pool/Generation_manager.rb
Overview
表示服务器端的单个服务器,可以是独立运行运行的、副本集的一部分或mongos。
在命名空间下定义
类: AppMetadata 、 Connection 、 ConnectionBase 、 ConnectionCommon 、 ConnectionPool 、 Description 、 Monitor 、 PendingConnection 、 PushMonitor 、 RoundTripTimeAverager
常量摘要折叠
- CONNECT_TIMEOUT =
连接尝试超时的默认时间(以秒为单位)。
10.冻结
Loggable中包含的常量
实例属性摘要折叠
-
#解决⇒ string
只读
为服务器配置的解决。
-
# cluster ⇒ 集群
只读
集群服务器集群。
-
# description ⇒ Server::Description
只读
描述监控刷新的服务器描述。
-
#monitor ⇒ nil | Monitor
只读
监视器 服务器监视器。
-
#监控⇒ 监控
只读
监控 监控。
-
# options ⇒ 哈希
只读
选项哈希。
-
# round_trip_time_averager =" RoundTripTimeAverager"
只读
private
往返时间平均器对象。
-
# scan_semaphore ⇒ 信号量
只读
private
信号量,用于请求服务器的监控(如果正在运行)立即扫描该服务器。
Event::Publisher中包含的属性
实例方法摘要折叠
-
# == (other) ⇒ true, false
此服务器与另一台服务器相同吗?
- # clear_connection_pool (service_id: nil, Interrupt_in_use_connections: false) ⇒ 对象 private
-
# clear_description ⇒ 对象
private
清除服务器描述,以便将其视为未知并可以安全地断开连接。
- # close ⇒ 对象
- #压缩器⇒ string | nil 已弃用 已弃用。
-
#可连接? ⇒ true, false
已弃用
已弃用。
MongoDB Server选择规范不再需要此功能。
-
#已连接? ⇒ true|false
private
是否已连接服务器。
-
#断开连接! ⇒ true
断开驱动程序与此服务器的连接。
-
# force_load_balancer? ⇒ true | false
private
返回此服务器是否被迫成为负载均衡器。
-
# handle_auth_failure! ⇒ 对象
处理身份验证失败。
-
# handle_handshake_failure! ⇒ 对象
private
处理握手失败。
- # heartbeat_Frequency ⇒ 对象(又名:#heartbeat_Frequency_seconds) 已弃用 已弃用。
-
#初始化(解决,集群,监控, event_listeners, options = {}) ⇒ 服务器
构造函数
private
实例化一个新的服务器对象。
-
#检查⇒ string
进行美观打印的服务器检查。
-
# last_scan ⇒ 时间 | nil
Last_scan 上次服务器扫描完成的时间,如果尚未扫描服务器,则为 nil。
-
# last_scan_monotime ⇒ Float | nil
private
Last_scan_monotime 上次服务器扫描完成的单调时间,如果尚未扫描服务器,则为 nil。
-
#matches_tag_set?(tag_set) ⇒ true, false
确定提供的标签是否是服务器标签的子集。
- # next_connection_id ⇒ 对象 private
-
#池⇒ Mongo::Server::ConnectionPool
获取此服务器的连接池。
-
# pool_internal ⇒ Server::ConnectionPool | nil
private
用于检索此服务器连接池的内部驱动程序方法。
-
# publish_opening_event ⇒ 对象
private
发布服务器打开事件。
-
#重新连接! ⇒ true
重新启动服务器监控。
-
# retry_reads? ⇒ 布尔
private
服务器是否支持新式读取重试。
-
# retry_writes? ⇒ true, false
是否会重试发送到此服务器的写入。
-
# start_monitoring ⇒ 对象
private
开始监控服务器。
-
# status ⇒ string
private
表示服务器状态的string (例如 主节点)。
- #摘要⇒ 对象
-
#未知! (options = {}) ⇒ 对象
将服务器标记为未知并发布关联的 SDAM事件(服务器描述已更改)。
- # update_description (description) ⇒ 对象 private
- #update_last_scan ⇒ Object private
-
# with_connection (connection_global_id: nil, &block) ⇒ 对象
使用连接执行一段代码,先将其签出服务器的池,然后再签入。
Event::Publisher中包含的方法
Monitoring::Publishable 中包含的方法
#publish_cmap_event 、 #publish_event 、 #publish_sdam_event
Loggable中包含的方法
#log_debug 、 #log_error 、 #log_ Fatal 、 #log_info 、 #log_warn 、 #logger
构造函数详情
#初始化(地址, 集群, 监控, event_listeners, options = {}) ⇒ MongoDB Server
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
服务器绝不能在集群之外直接实例化。
实例化一个新的服务器对象。 将启动背景刷新并订阅相应的事件。
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第71行 def 初始化(地址, 集群, 监控, event_listeners, = {}) @address = 地址 @cluster = 集群 @monitoring = 监控 = .dup _monitor = .删除(:monitor) @options = .冻结 @event_listeners = event_listeners @connection_id_gen = 类.new do 包括 id end @scan_semaphore = DistinguishingSemaphore.new @round_trip_time_averager = RoundTripTimeAverager.new @description = 说明.new(地址, {}, load_balancer: !!@options[:load_balancer], force_load_balancer: force_load_balancer?, ) @last_scan = nil @last_scan_monotime = nil 除非 [:monitoring_io] == false 监控 = 监控.new(self, event_listeners, 监控, .合并(merge)( app_metadata: 集群., push_monitor_app_metadata: 集群., heartbeat_interval: 集群.heartbeat_interval, )) 除非 _monitor == false start_monitoring end end @connected = true @pool_lock = 互斥锁.new end |
实例属性详细信息
#地址⇒ string (只读)
返回为服务器配置的解决。
106 107 108 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第106行 def 地址 @address end |
# 集群 ⇒ Cluster (readonly)
返回集群服务器集群。
109 110 111 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第109行 def 集群 @cluster end |
# description ⇒ Server::Description (readonly)
返回描述监控刷新的服务器描述。
123 124 125 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第123行 def 描述 @description end |
#监控⇒ nil |监控(只读)
返回监视器 服务器监视器。 如果服务器是使用 Monitoring_io: false 选项创建的,则为 nil。
113 114 115 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第113行 def 监控 监控 end |
# Monitoring ⇒监控(只读)
返回监控 监控。
119 120 121 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第119行 def 监控 @monitoring end |
# options ⇒哈希(只读)
返回选项哈希值。
116 117 118 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第116行 def @options end |
# round_trip_time_averager =" RoundTripTimeAverager " (只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回往返时间平均器对象。
233 234 235 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第233行 def round_trip_time_averager @round_trip_time_averager end |
# scan_semaphore ⇒信号量(只读)
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回信号量,以发出信号请求其监控立即扫描此服务器(如果正在运行)。
229 230 231 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第229行 def scan_semaphore @scan_semaphore end |
实例方法详细信息
# == (other) ⇒ true , false
此服务器与另一台服务器相同吗?
245 246 247 248 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第245行 def ==(其他) return false 除非 其他.is_a?(服务器) 地址 == 其他.地址 end |
# clear_connection_pool (service_id: nil, Interrupt_in_use_connections: false) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
667 668 669 670 671 672 673 674 675 676 677 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第667行 def clear_connection_pool(service_id: nil, Interrupt_in_use_connections: false) @pool_lock.同步 do # 从技术上讲,关闭后被标记为未知的服务器 # 不正确,但不会有意义地改变任何状态。 # 因为从历史上看,驱动程序允许服务器被标记为 # 在任何时候都是未知的,即使池已关闭,也要继续这样做。 if @pool && !@pool.已关闭? @pool.断开连接!(service_id: service_id, Interrupt_in_use_connections: Interrupt_in_use_connections) end end end |
# clear_description ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
清除服务器描述,以便将其视为未知并可以安全地断开连接。
657 658 659 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第657行 def clear_description @description = mongo::服务器::说明.new(地址, {}) end |
# close ⇒对象
294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第294行 def 关闭 if 监控 监控.停止! end @connected = false _pool = nil @pool_lock.同步 do _pool, @pool = @pool, nil end # TODO:在 RUBY- 3174中将其更改为 _pool.close。 # 清空池。 如果服务器并非未知,则 # 池将保持就绪状态。 停止背景填充器线程。 _pool&。关闭(keep_ready: true) nil end |
#compressor ⇒ String | nil
压缩是针对每个连接单独协商的。
服务器监控器协商的压缩器(如果有)。
如果没有服务器检查尚未完成,并且没有否定压缩,则此属性为零。
181 182 183 184 185 186 187 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第181行 def 压缩器 if 监控 监控.压缩器 else nil end end |
#可连接? ⇒ true , false
MongoDB Server选择规范不再需要此功能。
确定是否能够建立与服务器的连接以及是否可以向其发送消息。
261 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第261行 def 可连接?; end |
#已连接? ⇒ true|false
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
是否已连接服务器。
320 321 322 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第320行 def 已连接? @connected end |
#断开连接! ⇒ true
断开驱动程序与此服务器的连接。
断开连接池与此服务器的所有空闲连接(如果存在)。 如果连接池的填充器正在运行,请将其停止。 不立即关闭当前已签出(即正在使用)的连接 - 此类连接在返回到各自的连接池时将被关闭。 停止服务器的背景监控。
275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第275行 def 断开连接! if 监控 监控.停止! end @connected = false # 当前的 CMAP 规范要求池大部分不可用 # 如果其服务器未知(或因此断开连接)。 # 但是,任何未完成的操作都应继续完成, # 并且它们的连接需要签入池中才能 # 已拆除。 由于这种清理要求,我们不能只 # 关闭池并将其设立为 nil,以便在下一个 # 发现服务器的时间。 pool_internal&。清除 true end |
# force_load_balancer? ⇒ true | false
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回此服务器是否被迫成为负载均衡器。
130 131 132 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第130行 def force_load_balancer? [:connect] == :load_balanced end |
# handle_auth_failure! ⇒对象
处理身份验证失败。
524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第524行 def handle_auth_failure! 产量 救援 mongo::错误::SocketTimeoutError #集群可能很慢,但不要放弃 提高 救援 mongo::错误::SocketError, auth::Unauthorized => e # 非超时网络错误或身份验证错误,清除池并标记 #拓扑结构未知 未知!( 生成: e.生成, service_id: e.service_id, stop_push_monitor: true, ) 提高 end |
# handle_handshake_failure! ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
处理握手失败。
501 502 503 504 505 506 507 508 509 510 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第501行 def handle_handshake_failure! 产量 救援 mongo::错误::SocketError, mongo::错误::SocketTimeoutError => e 未知!( 生成: e.生成, service_id: e.service_id, stop_push_monitor: true, ) 提高 end |
# heartbeat_Frequency ⇒ Object也称为: heartbeat_Frequency_Seconds
159 160 161 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第159行 def heartbeat_Frequency 集群.heartbeat_interval end |
#检查⇒ string
进行美观打印的服务器检查。
355 356 357 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第355行 def 检查 " #<Mongo::Server:0 x #{ object_id} 解决 = #{ { 托管}: #{ 解决} #{ status} > " end |
# last_scan ⇒时间 | nil
返回 last_scan 上次服务器扫描完成的时间;如果尚未扫描服务器,则返回 nil。
138 139 140 141 142 143 144 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第138行 def last_scan if 描述 && !描述.config.空? 描述.last_update_time else @last_scan end end |
# last_scan_monotime ⇒ Float | nil
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回 last_scan_monotime 上次服务器扫描完成的单调时间;如果尚未扫描服务器,则返回 nil。
149 150 151 152 153 154 155 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第149行 def last_scan_monotime if 描述 && !描述.config.空? 描述.last_update_monotime else @last_scan_monotime end end |
# matches_tag_set? (tag_set) ⇒ true , false
确定提供的标签是否是服务器标签的子集。
461 462 463 464 465 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第461行 def matches_tag_set?(tag_set) tag_set.密钥.全部? do |k| [k] && [k] == tag_set[k] end end |
# next_connection_id ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
680 681 682 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第680行 def next_connection_id @connection_id_gen.next_id end |
#池⇒ Mongo::Server::ConnectionPool
获取此服务器的连接池。
424 425 426 427 428 429 430 431 432 433 434 435 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第424行 def 池 if 未知? 提高 错误::ServerNotUsable, 地址 end @pool_lock.同步 do opts = 已连接? ? : .合并(merge)(Populator_io: false) @pool ||= 连接池.new(self, opts).点击 do |池| 池.准备就绪 end end end |
# pool_internal ⇒ Server::ConnectionPool | nil
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
用于检索此服务器连接池的内部驱动程序方法。
与pool
不同,如果池尚不存在, pool_internal
则不会创建。
445 446 447 448 449 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第445行 def pool_internal @pool_lock.同步 do @pool end end |
# publish_opening_event ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
发布服务器打开事件。
340 341 342 343 344 345 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第340行 def publish_opening_event publish_sdam_event( 监控::SERVER_OPENING, 监控::事件::ServerOpening.new(地址, 集群.拓扑结构) ) end |
#重新连接! ⇒ true
重新启动服务器监控。
475 476 477 478 479 480 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第475行 def 重新连接! if [:monitoring_io] != false 监控.重新启动! end @connected = true end |
# retry_reads? ⇒布尔
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
服务器是否支持新式读取重试。
543 544 545 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第543行 def retry_reads? !!(功能.session_enabled? && logic_session_timeout) end |
# retry_writes? ⇒ true , false
可重试写入仅适用于服务器版本3.6 + 且具有分片集群或副本集。
对于负载均衡拓扑,此方法中的某些条件会自动返回 false。 此方法中的条件应始终为 true,因为负载均衡拓扑仅在 MongoDB 5.0 + 上可用,不适用于独立运行的拓扑。 因此,我们可以假设已启用重试写入。
是否会重试发送到此服务器的写入。
564 565 566 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第564行 def retry_writes? !!(功能.session_enabled? && logic_session_timeout && !独立运行?) || load_balancer? end |
# start_monitoring ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
开始监控服务器。
由驾驶员在内部使用,将服务器添加到集群,同时延迟监控,直到服务器加入集群。
330 331 332 333 334 335 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第330行 def start_monitoring publish_opening_event if [:monitoring_io] != false 监控.运行! end end |
#status ⇒ String
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
返回表示服务器状态的string (例如 主节点)。
362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第362行 def 状态 案例 when load_balancer? 'LB' when 主节点? ' PRIMARY ' when 从节点(secondary node from replica set)? ' SECONDARY ' when 独立运行? 'STANDALONE' when 仲裁节点? 'ARBITER' when ghost? 'GHOST' when 其他? ' OTHER ' when mongos? 'MONGOS' when 未知? ' UNKNOWN ' else # 由于摘要方法经常用于调试,因此不要引发 # 如果没有匹配的预期类型,则会出现异常 nil end end |
#摘要⇒对象
此方法是实验性的,可能会发生变化。
393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第393行 def 总结 状态 = self.状态 || ' ' if replica_set_name 状态 += " replica_set= #{ replica_set_name } " end 除非 监控&。运行? 状态 += " NO-MONITORING" end if @pool 状态 += " pool= #{ @pool .summary } } " end Address_bit = if 地址 " #{ 解决}: #{ 托管} " else 'nil' end " #< 解决= #{ address_bit } #{ status } > " end |
#未知! (options = {}) ⇒对象
将服务器标记为未知并发布关联的 SDAM事件(服务器描述已更改)。
如果在选项中传递了生成,则仅当传递的生成不早于服务器连接池的当前生成,服务器才会被标记为未知。
592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第592行 def 未知!( = {}) 池 = pool_internal if load_balancer? # 当客户端处于负载均衡拓扑结构时,服务器(其中一个和 # only that can be)开始时作为负载负载均衡器,并保持作为 # 负载负载均衡器无限期。 因此,它没有被标记为未知。 # # 但是,此方法也会清除服务器的连接池 # 当后者被标记为未知时,并且这部分需要发生 # 当服务器是负载均衡器时。 # # 负载均衡器服务器可能没有服务 ID, #示例,如果尚未成功连接到 # 此服务器,但该服务器仍可标记为未知,前提是 # 个此类连接在建立过程中失败。 if service_id = [:service_id] 池&。断开连接!(service_id: service_id) end return end if [:Generation] && [:Generation] < 池&。生成 return end if [:topology_version] && 描述.topology_version && ![:topology_version].gt?(描述.topology_version) then return end if [:stop_push_monitor] 监控&。stop_push_monitor! end # SDAM 流将更新服务器上的描述,而无需就地更新 # 更改并根据需要调用 SDAM 转换。 config = {} if [:service_id] config[' serviceId '] = [:service_id] end if [:topology_version] config['topologyVersion'] = [:topology_version] end new_description = 说明.new(地址, config, load_balancer: load_balancer?, force_load_balancer: [:connect] == :load_balanced, ) 集群.run_sdam_flow(描述, new_description, ) end |
# update_description (description) ⇒对象
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
645 646 647 648 649 650 651 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第645行 def update_description(描述) 池 = pool_internal if 池 && !描述.未知? 池.准备就绪 end @description = 描述 end |
#update_last_scan ⇒ Object
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
685 686 687 688 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第685行 def update_last_scan @last_scan = 时间.now @last_scan_monotime = Utils.monotic_time end |
# with_connection (connection_global_id: nil, &block) ⇒对象
使用连接执行一段代码,先将其签出服务器的池,然后再签入。
493 494 495 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/server.rb', 第493行 def with_connection(connection_global_id: nil, 和块) 池.with_connection(connection_global_id: connection_global_id, 和块) end |