V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
cqcn1991
V2EX  ›  问与答

怎么收集点击某个按钮的次数?

  •  
  •   cqcn1991 · 2017-07-07 16:34:01 +08:00 · 2756 次点击
    这是一个创建于 2696 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如图

    对于每本书,我有 3 个链接,跳转到其他网站

    我想统计用户点击这 3 个链接的次数,后期用这个数据来分析每本书的受欢迎程度。

    我想到两种做法

    • 简单的做法,先走自己的后端,然后直接数据库里点击数量+1,再跳转到实际链接。但感觉比较笨重。
    • 前端用 google analytics 来做?或者类似 mixpanel 等免费的工具

    实际来说,我觉得可能第 1 种反而比较简单粗暴,因为这样点击数据就直接进我后台数据库,不需要再后期合成了....

    不知道有没有朋友可以指点一下?

    这个就个人小项目....

    15 条回复    2017-07-07 21:17:14 +08:00
    awanabe
        1
    awanabe  
       2017-07-07 16:46:42 +08:00   ❤️ 1
    用 1 啊, 加个短连接跳转, 可以隐藏佣金链接。
    你看下 smzdm 都是这么做的,跳转到 go.smzdm.com/ 再跳到佣金链接
    awanabe
        2
    awanabe  
       2017-07-07 16:47:09 +08:00
    对了,可以不用数据库, 用 redis, 速度就快多了
    cxyfreedom
        3
    cxyfreedom  
       2017-07-07 16:48:29 +08:00
    就和点赞或者反对功能按钮一样,用 redis 来计数
    cqcn1991
        4
    cqcn1991  
    OP
       2017-07-07 16:53:32 +08:00
    @awanabe
    @cxyfreedom
    对 redis 不是很熟,为啥用 redis 不用数据库记数?那数据不会丢吗?
    jinhan13789991
        5
    jinhan13789991  
       2017-07-07 16:57:54 +08:00
    v2ex 的点击量就是刷新一次页面就累计+1
    jinhan13789991
        6
    jinhan13789991  
       2017-07-07 16:58:16 +08:00
    应该限制一下 ip,每个 ip 每天只能算一次
    cxyfreedom
        7
    cxyfreedom  
       2017-07-07 17:00:24 +08:00
    @cqcn1991 redis 速度快,防止数据丢失可以用 rdb 或者 aof 的方式。又或者你也可以先写入 redis,然后定时在写入数据库中等等解决方案。
    cqcn1991
        8
    cqcn1991  
    OP
       2017-07-07 17:03:05 +08:00
    @cxyfreedom 明白了~谢谢~
    cqcn1991
        9
    cqcn1991  
    OP
       2017-07-07 17:04:54 +08:00
    @jinhan13789991 嗯,这个确实从来没想过。。。我都还在想怎么才能统计到,你就已经想反复了。。。。
    wildcat007
        10
    wildcat007  
       2017-07-07 17:13:47 +08:00   ❤️ 1
    小哥哥~redis 也可以持久化的呀~
    Septembers
        11
    Septembers  
       2017-07-07 17:19:14 +08:00   ❤️ 1
    Google Analytics 支持 Event Tracking 可以实现
    see https://developers.google.com/analytics/devguides/collection/analyticsjs/events
    Morriaty
        12
    Morriaty  
       2017-07-07 17:37:14 +08:00   ❤️ 1
    看你的量和实时性要求了。

    如果并发不高,的确 redis 就够了。

    如果实时性要求不高,就按埋点的思维来,点击按钮触发个 js,落地到日志,然后每天统计日志。
    lwbjing
        13
    lwbjing  
       2017-07-07 18:37:47 +08:00
    要么你自己存起来,要么找第三方帮你存起来,,比如百度统计的事件统计。。
    lengjingxu
        14
    lengjingxu  
       2017-07-07 21:13:37 +08:00 via Android
    growingio 吧,感觉还不错。 虽然高级功能还不是很会用,不过用来满足你的需求还是够的。
    ericls
        15
    ericls  
       2017-07-07 21:17:14 +08:00
    google analytic send 一个 event 就行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2816 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 07:34 · PVG 15:34 · LAX 23:34 · JFK 02:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.