jdbc五個(gè)步驟 jdbc執(zhí)行異常后鏈接釋放慢怎么辦?
jdbc執(zhí)行異常后鏈接釋放慢怎么辦?首先明確這種場景:1. 應(yīng)用更改數(shù)據(jù)2. 應(yīng)用提交COMMIT(通過JDBC的Connection#commit()接口)3. Commit在數(shù)據(jù)庫端執(zhí)行成功4.
jdbc執(zhí)行異常后鏈接釋放慢怎么辦?
首先明確這種場景:
1. 應(yīng)用更改數(shù)據(jù)
2. 應(yīng)用提交COMMIT(通過JDBC的Connection#commit()接口)
3. Commit在數(shù)據(jù)庫端執(zhí)行成功
4. 由于網(wǎng)絡(luò)原因數(shù)據(jù)庫端發(fā)出的響應(yīng)信息未到達(dá)應(yīng)用端
5. 應(yīng)用端“并沒有收到成功的信息,所以應(yīng)用服務(wù)器認(rèn)為事務(wù)執(zhí)行失敗”,因此發(fā)起重試
現(xiàn)象:數(shù)據(jù)錯(cuò)誤,多轉(zhuǎn)了一筆錢
結(jié)論:這跟數(shù)據(jù)庫的數(shù)據(jù)一致性半毛錢關(guān)系都沒有,數(shù)據(jù)庫表示:“應(yīng)用的鍋別讓我背”
應(yīng)用的BUG在于上述的第5點(diǎn),誰讓你想當(dāng)然地認(rèn)為沒收到響應(yīng)就表示失敗了?
為什么京東越來越慢?
其實(shí)這兩年京東物流變慢是有趨勢的。
一是京東自營的商品種類越來越多,導(dǎo)致自營的倉庫放不下這么多商品,所以只能挑選部分種類去存貨。如果你選擇了倉庫附近沒有的商品,那么只能從遠(yuǎn)距離配送,也就相較于其他快遞一樣的速度甚至更慢。
京東快遞其實(shí)并不快,京東之所以給人速度快的感覺就是因?yàn)閾碛性S多自建的倉庫,江湖,商品提前放在離你就近的倉庫里,如果你下單,他就直接可以從當(dāng)?shù)貍}庫發(fā)貨。所以造就了京東速度快的感覺。
京東快遞,如果是遠(yuǎn)距離配送的話,甚至不如國內(nèi)的三通一達(dá)。因?yàn)榫〇|并沒有像三通一達(dá)這么完善的物流體系。京東屬于倉儲(chǔ)模式,而三通一達(dá)才是真正意義上的快遞企業(yè)。
再有就是如今其他快遞的速度也飛速的增長,相較于京東的倉儲(chǔ)模式速度非常接近了。所以京東的物流也已經(jīng)沒有任何的優(yōu)勢了。如果其他快遞都能實(shí)現(xiàn)當(dāng)日達(dá)或者次日達(dá),那么京東的物流優(yōu)勢完全就會(huì)喪失。
其實(shí)用過京東快遞的人都知道,京東快遞只是自營的部分比較快,而第三方的商品,如果用京東快遞進(jìn)行運(yùn)輸并沒有三通一達(dá)快。
之所以你感覺京東快遞慢了,是因?yàn)槠渌爝f的速度快了