`created_at` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '訂單創(chuàng)建的時(shí)間',
`updated_at` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '處理完成的時(shí)間',
`status` tinyint(2) NOT NULL COMMENT '當(dāng)前狀態(tài),0未處理,1已處理,2處理中',
PRIMARY key (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
`updated_at` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '處理完成的時(shí)間',
`status` tinyint(2) NOT NULL COMMENT '當(dāng)前狀態(tài),0未處理,1已處理,2處理中',
PRIMARY key (`id`)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
2017-07-24
拿走不謝
create table `order_queue`(
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id號',
`order_id` int(11) NOT NULL,
`mobile` varchar(20) NOT NULL COMMENT '用戶手機(jī)號',
create table `order_queue`(
`id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id號',
`order_id` int(11) NOT NULL,
`mobile` varchar(20) NOT NULL COMMENT '用戶手機(jī)號',
2017-07-24
視頻里的代碼只能實(shí)現(xiàn)削峰,但是沒有實(shí)現(xiàn)鎖,這樣判斷在高并發(fā)的情況下 ,肯定會(huì)出現(xiàn)超賣的情況,因?yàn)槿绻瑫r(shí)有100個(gè)進(jìn)程執(zhí)行了$resdis->lLen($resdis_name)<10,都是返回true的。
建議使用decr方式,實(shí)現(xiàn)原子性的判斷
建議使用decr方式,實(shí)現(xiàn)原子性的判斷
2017-07-24
老師的教程只是提供一個(gè)思路,真實(shí)的場景如果另外一個(gè)程序一直在循環(huán)取redis隊(duì)列中的數(shù)據(jù),在高并發(fā)的情況下肯定會(huì)出現(xiàn)超賣情況,那么可以在用戶秒殺結(jié)束redis隊(duì)列中數(shù)據(jù)達(dá)到秒殺人數(shù)后,關(guān)閉前臺(tái)頁面中的秒殺按鈕,點(diǎn)擊購買不再執(zhí)行購買程序提示秒殺結(jié)束,然后再redis列中取數(shù)據(jù)->插入mysql->下訂單等等邏輯操作,個(gè)人理解不喜勿噴
2017-07-20
已采納回答 / subarashiigyoku
開始->附件->運(yùn)行->輸入:taskschd.msc打開任務(wù)計(jì)劃程序。登錄你要的腳本,根據(jù)需要設(shè)置類似觸發(fā)器什么的。
2017-07-18
最新回答 / 921231
在操作數(shù)據(jù)庫時(shí)除查詢外的所有操作都是會(huì)加排它鎖的,所以如果在修改時(shí)有插入的話一般來說是不會(huì)有一些的,除非表被加排他鎖,會(huì)進(jìn)入等待,超過等待時(shí)間就回滾。
2017-07-16
此處的死循環(huán)是幾s才執(zhí)行一次 而那個(gè)秒殺幾乎是同一秒完成的 所以看不出隊(duì)列長度的變化..
2017-07-12
讀寫是同時(shí)進(jìn)行的,長度不是固定不變的,這個(gè)問題很關(guān)鍵,不能忽視啊
2017-07-12