文档数据库服务 DDS-DDS4.4功能概述:对冲读(Hedged Reads)
对冲读(Hedged Reads)
页面响应速度直接影响用户使用体验,和经济效益息息相关。如果一个网页的加载时间超过3秒,那么用户的跳出率会大幅上升。针对这类问题,DDS 4.4版本提供了对冲读(Hedged Reads)的能力,意即在DDS分片集群中,mongos节点会把一个客户端的读请求同时发送给某个Shard分片的多个副本集节点,最后选择响应最快节点的返回结果回复给客户端,来减少业务侧感知到的延迟。
您可以通过配置Read Preference参数来使用对冲读(Hedged Reads)功能,因此可以针对每一个具体的Operation进行配置。
- 当Read Preference配置为nearest时,默认开启对冲读(Hedged Reads)功能;
- 当Read Preference配置为primary时,不支持对冲读(Hedged Reads);
- 当Read Preference指定为其他参数时,需要显示地指明hedgeOptions才会启用对冲读功能。
例如:
db.collection.find({ }).readPref( "secondary", // mode设置 [ { "usage": "read" }, { } ], // tag标签 { enabled: true } // hedgeOptions开关 )