实时计算用户持股金额的股票系统要怎么设计好?
一共有几千支股票,价格每秒都在变化 每个用户初始持有股票,并且随着下单变化 现在要求每支股票价格变化、或者用户持股数量变化的时候统计出用户持股总额(每支股票数量*价格的和)
我遇到的问题是股票的价格每秒可能会有几千次变化, 每次变化都要去数据库查找这支股票被哪些用户的持有,实在太慢了,做不到实时统计 所以想来问下,大家有什么好看法,或者有什么框架可以套用这种场景?
一共有几千支股票,价格每秒都在变化 每个用户初始持有股票,并且随着下单变化 现在要求每支股票价格变化、或者用户持股数量变化的时候统计出用户持股总额(每支股票数量*价格的和)
我遇到的问题是股票的价格每秒可能会有几千次变化, 每次变化都要去数据库查找这支股票被哪些用户的持有,实在太慢了,做不到实时统计 所以想来问下,大家有什么好看法,或者有什么框架可以套用这种场景?
需求是用户 A 对于股票 1 设定了一个通知价格 x, 到了这个价格立马通知用户 (无论是 push 还是短信)
因为用户数量大, 股票价格的阶梯数量也大, 怎么设计数据结构很关键
然后,嫌慢你就别去数据库找……加载到内存里找啊。用户量多少?量大的话多搞点机器。
一般像同花顺这类的炒股软件,数据更新延迟好像都有 200-300ms,哪有实时这个概念!你这个需求,无非是整个定时任务,隔一段时间算一次
如果用户不是复杂持仓(我那边估算,持有超过 17 种以下单一价格票证),有巧妙的算法解决,复杂持仓因为复杂度,就会让这个算法的效率无法接受了
搞这种应用的,算法都是很值钱的。如果搞不定一些黑科技,那就老老实实的所有用户每个周期跑
4.above all,真要做到那种极致的实时,上硬件支持