有没有人知道在Send方法中sampleRate检查和随机数的目的是什么 例如在c#示例中:
if (sampleRate < 1.0)
{
foreach (var stat in stats)
{
if (Random.NextDouble() <= sampleRate)
{
似乎你只会调用else部分中的代码 - 循环统计并发送
答案 0 :(得分:0)
该代码预计采样率介于0.0和1.0之间。然后它生成一个随机值,如果它小于sampleRate,则stat将被发送。这是一种基于假设您从Random.NextDouble()
获得均匀分布的随机值的方法来对值进行抽样的概率方法。
这样做是因为如果你有很多统计数据,你可能不需要发送每一个。采样应该给你一个足够好的近似值。