本文整理汇总了Golang中github.com/foursquare/quiver/gen.HFileServiceClient.GetValuesMulti方法的典型用法代码示例。如果您正苦于以下问题:Golang HFileServiceClient.GetValuesMulti方法的具体用法?Golang HFileServiceClient.GetValuesMulti怎么用?Golang HFileServiceClient.GetValuesMulti使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/foursquare/quiver/gen.HFileServiceClient
的用法示例。
在下文中一共展示了HFileServiceClient.GetValuesMulti方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: sendMulti
// Generate and send a random GetValuesSingle request.
func (l *Load) sendMulti(client *gen.HFileServiceClient, diff *gen.HFileServiceClient) {
numKeys := int(math.Abs(rand.ExpFloat64()*10) + 1)
keys := l.randomKeys(numKeys)
r := &gen.SingleHFileKeyRequest{HfileName: &l.collection, SortedKeys: keys}
before := time.Now()
resp, err := client.GetValuesMulti(r)
if err != nil {
log.Println("[GetValuesMulti] Error fetching value:", err, util.PrettyKeys(keys))
}
report.TimeSince(l.rtt+".overall", before)
report.TimeSince(l.rtt+".getValuesMulti", before)
if diff != nil {
beforeDiff := time.Now()
diffResp, diffErr := diff.GetValuesMulti(r)
if diffErr != nil {
log.Println("[GetValuesMulti] Error fetching diff value:", diffErr, util.PrettyKeys(keys))
}
report.TimeSince(l.diffRtt+".overall", beforeDiff)
report.TimeSince(l.diffRtt+".getValuesMulti", beforeDiff)
if err == nil && diffErr == nil && !reflect.DeepEqual(resp, diffResp) {
report.Inc("diffs")
report.Inc("diffs.getValuesMulti")
log.Printf("[DIFF-getValuesMulti] req: %v\n \torig: %v\n\n\tdiff: %v\n", r, resp, diffResp)
}
}
}
示例2: sendMulti
// Generate and send a random GetValuesSingle request.
func (l *Load) sendMulti(client *gen.HFileServiceClient, diff *gen.HFileServiceClient) {
var wg sync.WaitGroup
keys := l.randomKeys()
r := &gen.SingleHFileKeyRequest{HfileName: &l.collection, SortedKeys: keys}
var diffResp *gen.MultiHFileKeyResponse
var diffErr error
if diff != nil {
wg.Add(1)
go func() {
defer wg.Done()
beforeDiff := time.Now()
diffResp, diffErr = diff.GetValuesMulti(r)
if diffErr != nil {
log.Println("[GetValuesMulti] Error fetching diff value:", renderErr(diffErr), util.PrettyKeys(keys))
}
report.TimeSince(l.diffRtt+".overall", beforeDiff)
report.TimeSince(l.diffRtt+".getValuesMulti", beforeDiff)
}()
}
before := time.Now()
resp, err := client.GetValuesMulti(r)
if err != nil {
log.Println("[GetValuesMulti] Error fetching value:", renderErr(err), util.PrettyKeys(keys))
}
report.TimeSince(l.rtt+".overall", before)
report.TimeSince(l.rtt+".getValuesMulti", before)
if diff != nil {
wg.Wait()
if err == nil && diffErr == nil && !reflect.DeepEqual(resp, diffResp) {
report.Inc("diffs")
report.Inc("diffs.getValuesMulti")
log.Printf("[DIFF-getValuesMulti] req: %v\n \torig: %v\n\n\tdiff: %v\n", r, resp, diffResp)
}
}
}