zoukankan      html  css  js  c++  java
  • 微信红包中使用的技术:AA收款+随机算法

      除夕夜你领到红包了吗?有的说“我领了好几K!”“我领了几W!” 土豪何其多,苦逼也不少!有的说“我出来工作了,没压岁钱了,还要发红包”。那您有去抢微信红包吗?微信群中抢“新年红包”春节爆红。618微信抢红包啦

    微信红包

      微信红包的玩法极为简单,它背后是腾讯财付通运营的名为“新年红包”的公众号,功能上可以实现发红包、查收发记录和提现。关注该帐号后,微信用户可以发两 种红包, 一种是“拼手气群红包”,用户设定好总金额以及红包个数之后,可以生成不同金额的红包;还有一种是普通的等额红包。目前最为流行的是前者。

      那么微信红包中使用了哪些技术呢?AA收款+随机算法

      从付款收款的模式上来看,微信红包与AA收款的逻辑十分类似。后者是2013年12月,财付通推出的一项服务,用户通过“AA收款”服务号可以在聚餐、娱乐等多种场合下通过微信支付实现AA收款。
      这两者之间共同点就是,都是“一对多”的关系。如果收AA收款是一个人从多个人手中收钱,那么微信红包就是多个人从一个人手中收钱。因此,早先推出的AA收款功能就成了微信红包的技术基础。
      实际上,设计之初,微信红包团队曾经想到的是“要红包”,即一个用户向其他用户讨要红包,这个逻辑更接近AA收款。但是要红包会让被索要者产生抗拒感,而抢红包则相对更符合人的心理活动。所以,最终上线的红包就从“要”转成了“抢”。
      那么如何产生不同的收益金额?这是由一种随机算法产生的。
      在如何分配红包时,最早团队也考虑过给用户一个吉利的数字,比如末尾为8,但是这势必造成另一些用户得到并不喜欢的数字组合。于是,就决定采用生成随机数字的方式,而这对技术团队来说并不陌生。
      其实,在微信早期产品中就曾出现过两个互动小游戏,隐藏在了表情功能里。一个是石头剪子布,另一个是摇骰子。这两个游戏原本用于朋友之间通过随机事件做出决策,比如谁赢谁付款。
      这种随机算法就被运用到了微信红包中,于是用户就看到了各种随机生成的红包“收益”,甚至由于份数被设定的足够多,也会产生0。01元的情况。
      正是由于这样的技术积累,才使得微信红包能够在短期内迅速上线。不过,在技术的支持下,产品自身的用户体验同样重要。原文

  • 相关阅读:
    python多线程爬取图片二
    python多线程爬取图片实例
    python3的类
    简单的python爬虫实例
    简单的python多线程实例
    webapi 下载Ftp文件并返回流到浏览器完成文件下载
    .net 配置Swagger
    IDEA 发布Api
    MySql 查询表结构信息
    解决js的 Math取正弦值 余弦值不准确的问题
  • 原文地址:https://www.cnblogs.com/ytkah/p/3544814.html
Copyright © 2011-2022 走看看