有了上⾯對分布式鎖的粗略基礎,我們模擬下10w⼈搶單的場景,其實就是⼀個併發操作請求⽽已,由於環境有限,只能如此測 試;如下初始化10w個⽤⼾,並初始化庫存,商品等資訊,如下**:
parallelstream():並⾏流模擬多⽤⼾搶購 (starttime + timeout) >= system.currenttimemillis():判斷未搶成功的⽤⼾,timeout秒內繼續獲取鎖 獲取鎖前和後都判斷庫存是否還⾜夠
jediscom.setnx(shangpingkey, b):⽤⼾獲取搶購鎖 獲取鎖後並下單成功,最後釋放鎖:jediscom.delnx(shangpingkey, b)
模擬搶票系統
from multiprocessing import process,lock import json,time,random,os def piao mutex mutex.acquire 作用 按順序購票,不會插隊 dic json.load open db.txt 讀取,檢視車票總數 if ...
4 5兼模擬卡牌動作和動作組合
scaleto,以原型為基準變到多少倍 scaleby,以當前為基準變多少倍 setscale xf 直接定位x倍大小 define tag sprite2要在標頭檔案宣告 this addchild sprite2,10,tag sprite2 第二個引數是層數,即高層會遮蓋底層,亦可理解為z軸 ...
monkeyrunner 模擬測試使用者動作
在sdk 中monkeyrunner 可以執行python指令碼 如 monkeyrunner test.py from com.android.monkeyrunner import monkeyrunner,monkeydevice,monkeyimage device monkeyrunner...