最新回答 / kevinscott
完整代碼地址:https://github.com/firery/imooc-seckill代碼都有完整的注釋,依賴更新為目前的最新版本,數據庫采用MySQL 8.0。另外有少許優化,比如最后的瀏覽器計時誤差等。
2016-09-05
最新回答 / iesenk
你知道md5的值是seckillid生成的,這個生成是你請求系統才會產生的,如果你私自改MD5值,肯定無法和之前匹配了。這樣就很容易造成了刷單。一般秒殺都是單人單產品的。實際生產不只是一個值,還需要給生命周期的,過期地址也會失效的。
2016-09-01
最贊回答 / 吼哈
不能說沒作用,如果不加密,用戶截取了你的訪問地址,他看到了當前秒殺ID為1000,他完全可以推測出其他的秒殺地址,或者說他可以造出一批地址;視頻中秒殺在數據庫中判斷了秒殺時間,其他時間他自然是秒殺不到,但是對數據庫也有一定的沖擊,如果他用定時器或者循環秒殺軟件,你的系統承受力是個問題;另一方面對于一些還沒開始的秒殺,他模擬地址以后,完全可以用定時器一直訪問。加密以后由于他拿不到混淆碼,就只能通過點擊鏈接進行秒殺……
2016-09-01
最贊回答 / F遲墨
視頻里 xml注解寫錯了<!--掃描service包下所有使用注解的類型 --><context:component-scan base-package="org.seckill.dao" />應該是這樣
2016-08-19
最贊回答 / 原來我叫小土慕課網給我改了名字
分布式事務的話主要有兩種方式:(1)兩階段提交協議。就是在兩個不同服務的上層有一個事務協調器(TC)。當發起一個請求時,TC先將消息寫到本地日志里,之后向所有服務發起消息,本地日志是為例故障后恢復所用,相當于憑證的效果。所有服務收到消息后,執行具體本機事務,但不會進行commit,如果成功返回yes,失敗返回no。同理,返回前都應把返回的消息寫到日志里,當作憑證。TC手機所有返回的消息,如果所有服務都返回yes,那么給所有服務發送commit消息,如果有一個服務返回no,那么給所有服務發送abort消息,...
2016-07-15
最贊回答 / Peter_Matrix
重復秒殺會拋RepeatKillException異常, ?聲明式事務檢測到sevice層拋出運行期異常了就會自動回滾,回滾是以方法為整體回滾。 ?我說清楚了嗎,沒有說清楚我再講一遍 。
2016-07-01
最新回答 / helinz
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" ? ? ? xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ? ? ? xmlns:context="http://www.springframework.org/schema/context" ? ? ? xsi:schemaLocat...
2016-06-28