在定時算法中儘可能採用一個定時器,輪詢不一樣的定時需求。算法
例子:隊列
各家商戶的訂單,須要設置不一樣的訂單超時時間。內存
通常作法是每一個訂單都生成一個相應超時時間的定時器,定時器到了後自動超時。可是同時多個定時器,這樣會形成內存佔用太多。定時器
建議:時間
只生成一個定時器(以秒爲單位),能夠將多個商戶的訂單分紅不一樣的隊列,設置隊列id和隊列超時時間,定時器去輪詢全部的隊列,若是訂單生成時間加上超時時間超過當前時間即爲超時。生成