0
我正在计算用户访问webapp的平均会话。 每次访问页面都会在我的数据库中创建访问记录。Rails中的平均会话计算
现在有~40000个vistis有10000个个人代币,所以我的计算时间很长。 有人提出了一个想法来提高计算平均会话的速度吗?
现在我正在收集uniqe令牌。然后我查找每个标记的第一次和最后一次访问来计算差异。
diff = 0
token = self.visits.where(created_at: self.statistic_range).pluck(:token).uniq
token.each do |tok|
visits = self.visits.where(created_at: self.statistic_range, token: tok).order('updated_at asc')
diff += (visits.last.created_at - visits.first.created_at).round
end
return diff/token.size