首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Boomerang.js的随机化使用

Boomerang.js的随机化使用
EN

Stack Overflow用户
提问于 2012-04-24 21:51:51
回答 2查看 858关注 0票数 2

有没有一个很好的理由让我不能使用boomerang

代码语言:javascript
复制
<script type="text/javascript">
        if (Math.random() < 0.005) {//one time in 200
            document.write(
                '<scr' + 'ipt src="/scripts/boomerang.js" type="text/javascript"></scr' + 'ipt>' +
                    '<scr' + 'ipt type="text/javascript">BOOMR.init({'+
                        'user_ip: "'+ '<%= Request.UserHostAddress %>' +'",'+
                        'site_domain: "' + '<%= //TODO from config%>' + '",' +
                        'beacon_url: "/Handlers/Boomerang.ashx",'+
                        'BW: {base_url: "/Resources/images/Boomerang/"}'
                    +'});</scr' + 'ipt>'
            );
        }
        else if (Math.random() < 0.1) {//one time in ten
            document.write(
                '<scr' + 'ipt src="/scripts/boomerang.js" type="text/javascript"></scr' + 'ipt>' +
                    '<scr' + 'ipt type="text/javascript">BOOMR.init({'+
                        'user_ip: "'+ '<%= Request.UserHostAddress %>' +'",'+
                        'site_domain: "' + '<%= //TODO from config%>' + '",' +
                        'beacon_url: "/Handlers/Boomerang.ashx",'+
                        'BW : { enabled : false }'+
                    '});</scr' + 'ipt>'
            );
        }
</script>

这会使返回的计时失效吗?

我们不太关心使用多页方法获得结果:我们满足于只从timing api接收结果。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 23:29:08

为什么不在所有页面上包含回飞棒,并且只根据您的采样率修改对init的调用?如下所示:

代码语言:javascript
复制
<script src="/scripts/boomerang.js"></script>
<script>
    var rand=Math.random(), test="";
    if(rand < 0.05) {     // one time in 200
        test="BW";
    }
    else if(rand < 0.1) { // 19 times in 200
        test="NOBW";
    }
    if(test) {
        BOOMR.addVar({
            test: test
        }).init({
            user_ip: "<%= Request.UserHostAddress %>",
            site_domain: "<%= //TODO from config%>",
            beacon_url: "/Handlers/Boomerang.ashx",
            BW: {
                base_url: (test == "BW" ? "/Resources/images/Boomerang/" : ""),
                enabled:  (test == "NOBW" ? false : true)
            }
        });
    }
</script>

此脚本与您的版本之间的主要区别在于添加了addVar({ test: test }),它会告诉您的信标收集器使用的是哪个版本。如果rand的值有助于调试,您可能还希望传入该值。

我测量了从单个linode机器为全球数百万用户加载回飞棒所需的时间,中位数加载时间为68ms (我们的脚本被浏览器缓存了7天)。我们也异步加载脚本,所以如果您发现回旋棒本身会影响页面加载时间,那么您可能需要考虑这一点。

票数 2
EN

Stack Overflow用户

发布于 2012-04-24 21:59:03

你为什么不在@bluesmoon上问一下随机化的最好方法是什么…他肯定不会咬人;-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10299330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档