架構背景:
瀏覽器/app <-- http -> Web請求處理層 <-- RPC --> Workerman-RPC業(yè)務邏輯處理層
業(yè)務說明:
數(shù)量一定的商品,用戶需要對該商品預約下單購買,預約成功后必須在30min內支付購買。用戶預約后,商品對外供應數(shù)量減少1;當用戶在30min時限內沒有支付購買,商品對外供應數(shù)量恢復1。
實現(xiàn):
上述業(yè)務邏輯在 Workerman-RPC框架的的Order服務實現(xiàn);當用戶預約成功后,是否可以在Order服務內通過Timer::add()添加一個定時器,30min后來處理 “用戶在30min時限內沒有支付購買,商品對外供應數(shù)量恢復1?!? 的邏輯。
另外對于Timer阻塞進程有個疑問: Timer本身并不會阻塞進程,只是Timer觸發(fā)的任務會阻塞進程?