页面埋点的作用,其实就是用于流量分析。而流量的意思,包含了很多:页面浏览数(PV)、独立访问者数量(UV)、IP、页面停留时间、页面操作时间、页面访问次数、按钮点击次数、文件下载次数等。而流量分析又有什么用处:
1、提高网站的转化率
根据页面埋点可得到一些重要信息,它告诉你用户对网站的反应,以及如何提高网站流量、改进网站性能,了解用户访问网站的行为,为更好地满足用户需求提供支持。
2、反应用户黏度
即使网站吸引了很多用户访问,但是通过流量分析发现,用户停留的时间非常短,重复访问用户不多,用户平均浏览的页面也少,这样的网站用户黏度不够,有流量但是没有忠实的用户,一旦有其它可替代网站,用户随时可能流失。这样的网站,如果不采取有效的运营措施,很难有长期发展的后劲。
3、为网站内容管理和网站的产品策划提供方向
通过流量分析,可以挖掘出整个网站哪个频道最有人气,频道之间的流量比例是多少,每个页面的流量是多少,哪个页面最受欢迎,每个页面中具体的哪个栏目点击 量最高,这样通过对频道、栏目、页面的具体流量分析和对比,可以挖掘出用户的需求,发现用户最关心什么内容,这对评估网站频道、内容、页面的价值有重要的 参考作用,也对网站内容下一步的优化有直接的参考意义。
一个简单的示例,js埋点收集页面浏览记录,用于ip,pv,uv分析:
js代码:
if(t === undefined){
var t = (function (deploymenPath) {
window.onload = function(){
var img = new Image();
img.src = deploymenPath + "/i/" + (new Date()).getTime() + ".gif?href="+location.href;
};
})("/one");
}
服务端接收请求,保存用户行为
@RequestMapping("{timestamp}.gif")
public String pv(@PathVariable String timestamp, String href, HttpServletRequest request, HttpServletResponse response) {
String ip = getIp2(request);
User user = UserUtils.getUser();
BrowseLog browseLog = new BrowseLog();
browseLog.setUser(user);
browseLog.setIp(ip);
browseLog.setBrowseTimestamp(timestamp);
browseLog.setHref(href);
browseLogService.save(browseLog);//最好是保存到日志文件后续再去分析,这里我直接保存数据库了
return null;
}
原始数据如下:
收集到了用户行为数据,我们后续就可以做很多事情了。。。。。