色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

計算機是不是能生成真正的隨機呢

張吉惟2年前11瀏覽0評論

計算機是不是能生成真正的隨機呢?

首先回答題主的問題:

1.搶紅包真的是“靠手氣”,在有限的次數內。實際搶紅包經歷已經告訴你了,如果次數足夠多的話,每個人搶的金額在數學上是一樣多的。

2.計算機不能生成真隨機數,可以是偽隨機數、贗隨機數,微信紅包采用的偽隨機數,但是他是帶有金額上限的,也就是每一次搶紅包,他的紅包剩余金額都是變化的。

3.微信紅包是實時算出來的,不是預先分配好的,當然這是內存計算,不涉及數據庫存儲查詢等耗時操作。

微信紅包的實現算法細節描述

用戶發紅包,從財付通拿到用戶的金額數據,設置紅包的個數、紅包的金額、類型(隨機或平均),保存這條數據入庫的同時同步至redis(或者先入redis再存庫),扣財付通的錢;

用戶開始搶紅包:比如50元10個紅包,平均一個5元,那么隨機金額就是0.01~10元。

當已經被搶5個紅包總共30元之后,還剩20元余額和5個紅包個數,那么第6個人的紅包隨機金額就是0.01~8元之間。每一個紅包都會根據剩余金額和剩余個數來重新計算金額,但是要保證最后一個紅包不得小于0.01元,而且最后一個紅包不需要做任何計算,剩多少給多少。

每條紅包數據增加一個計數器,原子操作剩余金額和剩余個數,避免冒領。

財付通做好每秒20萬入賬準備,實際效果只有8萬筆每秒(TPS 8w/s)。

每個紅包只有24小時有效期,超過24小時,沒有搶完的紅包返還發起人。

不會做到真正的隨機,只是偽隨機,無限次數演練的情況下理論上平均,遵循截尾正態分布。

金額最大的有兩個,誰先搶到“誰手氣最佳”。

大家還有哪些看法,歡迎評論區討論交流~