0

我正在查看http://datasift.com/页面底部的计数器,查看页面源后,我发现计数器是由如下JS代码生成的(存储在此链接中):

function UpdateClockCounter(count) {
  numberitems = jQuery('#clock ul').children('li').children('.number');
  number = '';
  numberitems.each(function(index, el) {
    number += jQuery(el).text();
  });
  number = number * 1 + count * 1;
  number = number.toString().split("").reverse().join("");
  revnumberitems = jQuery(numberitems.get().reverse());
  revnumberitems.each(function(index, el) {
    if( i = number.charAt(index))
      jQuery(el).text(i);
    else
      jQuery(el).text('0');
  });
}

刷新计数器时与服务器端没有通信。我可以说这个柜台是假柜台吗?还是我在这里想念什么?

我问这个问题是因为我想实现类似的东西。谢谢你。

4

2 回答 2

1

是的,完全是假的。甚至起始值都不是真实的。建立对他们服务的信心的好方法。以下是该函数的调用方式:

 jQuery(document).ready(function() {

      var start = Math.round(
          new Date("April 01, 2011 00:00:00").getTime()/1000);
      var time = Math.round(new Date().getTime()/1000);
      var d = time - start;
      var count = 1000000 + (d * 3000);

      SetClockCounter(count);

      setInterval(function() {
         var number = 
              Math.floor((Math.random() * (2500 - 3000 + 1) + 2500)/10);
         UpdateClockCounter(number);
      }, 100);
 });
于 2012-06-20T04:34:15.460 回答
0

该数字基于通过 twitter firehose 发布的推文数量。我们每秒处理数千条推文、Facebook 帖子、博客和其他数据。您可以随意查看通过我们服务的费率数据:http: //highscalability.com/blog/2011/11/29/datasift-architecture-realtime-datamining-at-120000-tweets-p.html

所以是的,正如您从 JS 中发现的那样,它是假的,但基于我们的过滤和流服务器的粗略平均吞吐量。使用这些数字比花时间创建一个服务更有效,该服务将作为返回 JSONP 响应的 REST 服务计算并坐在那里。你会发现真实的数字并没有太大的不同。我们正在谈论数十亿的“交互”,因此只有几千的数据通过平台只需要 1 秒的时间。

于 2012-06-20T07:45:57.377 回答