.NET Core如何实现类似饿了吗的复杂拆红包功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1967个文字,预计阅读时间需要8分钟。
要求说明:近期中午常点外卖的我,因为方便,提前点好餐,算准时间,下班的空闲时候就可以吃上饭,省下的时间中午可以多休息一会儿。
需求说明
以前很讨厌点外卖的我,最近中午经常点外卖,因为确实很方便,提前点好餐,算准时间,就可以在下班的时候吃上饭,然后省下的那些时间就可以在中午的时候多休息一下了。
点餐结束后,会有一个好友分享红包功能,虽说这个红包不能提现,但却可以抵扣点餐费用,对于经常点餐的人来说,直接用于抵扣现金确实是很大的诱惑,在点餐之后所获得的那个红包,必须要分享出去才能拆。
那么如果自己也想实现以下抢红包功能,需要说明的是,本文所描述的红包功能更多的关注与随机红包的生成,至于高并发、数据一致性等问题,本文暂未涉及,以下是本文所讨论的两个技术点:
不同的消费金额获取的红包总额不同,消费金额越大,红包总额就越大,红包总数也就越多;假设有一天,有一种需求是,需要保证参与抢红包的人获得的红包金额在平均数附近波动,也就是尽量的服从正态分布;
功能实现
本文描述的场景,所涉及到的金额以分为单位,目的是为了更好的处理随机数。总体的示意图如下:
消费后红包的初始化
需求重点,用户分享出去的红包总额跟消费总额成正比,可以分拆的子红包个数也与消费总额成正比。
本文共计1967个文字,预计阅读时间需要8分钟。
要求说明:近期中午常点外卖的我,因为方便,提前点好餐,算准时间,下班的空闲时候就可以吃上饭,省下的时间中午可以多休息一会儿。
需求说明
以前很讨厌点外卖的我,最近中午经常点外卖,因为确实很方便,提前点好餐,算准时间,就可以在下班的时候吃上饭,然后省下的那些时间就可以在中午的时候多休息一下了。
点餐结束后,会有一个好友分享红包功能,虽说这个红包不能提现,但却可以抵扣点餐费用,对于经常点餐的人来说,直接用于抵扣现金确实是很大的诱惑,在点餐之后所获得的那个红包,必须要分享出去才能拆。
那么如果自己也想实现以下抢红包功能,需要说明的是,本文所描述的红包功能更多的关注与随机红包的生成,至于高并发、数据一致性等问题,本文暂未涉及,以下是本文所讨论的两个技术点:
不同的消费金额获取的红包总额不同,消费金额越大,红包总额就越大,红包总数也就越多;假设有一天,有一种需求是,需要保证参与抢红包的人获得的红包金额在平均数附近波动,也就是尽量的服从正态分布;
功能实现
本文描述的场景,所涉及到的金额以分为单位,目的是为了更好的处理随机数。总体的示意图如下:
消费后红包的初始化
需求重点,用户分享出去的红包总额跟消费总额成正比,可以分拆的子红包个数也与消费总额成正比。

