單價(jià): | 面議 |
發(fā)貨期限: | 自買(mǎi)家付款之日起 天內發(fā)貨 |
所在地: | 廣東 廣州 |
有效期至: | 長(cháng)期有效 |
發(fā)布時(shí)間: | 2023-11-30 05:40 |
最后更新: | 2023-11-30 05:40 |
瀏覽次數: | 145 |
采購咨詢(xún): |
請賣(mài)家聯(lián)系我
|
上門(mén)陪玩app開(kāi)發(fā),軟件搭建,程序制作、系統設計彧昪翀
像游戲陪玩源碼這種涉及訂單交易的程序,在開(kāi)發(fā)時(shí)需要特別注意重復提交問(wèn)題,前端提交后鎖住按鈕或服務(wù)端加上判斷等方式,可以起到作用,但只能解決一部分問(wèn)題,并不能完美解決,那么在游戲陪玩源碼開(kāi)發(fā)中還可以采用什么方式呢?
一、服務(wù)端收到重復請求的可能場(chǎng)景
1、如果游戲陪玩源碼前端把關(guān)不嚴,就有可能會(huì )出現用戶(hù)點(diǎn)擊完提交按鈕,但提交按鈕未被禁用的情況,在這種情況下,如果用戶(hù)點(diǎn)擊多次提交按鈕,就會(huì )向服務(wù)端發(fā)起多次請求。
2、如果游戲陪玩源碼程序出現錯誤或遇到攻擊行為,就會(huì )出現對同一業(yè)務(wù)發(fā)起多次服務(wù)請求的情況。
3、如果在游戲陪玩源碼前端或后端設置的重試邏輯發(fā)生異常,就會(huì )出現一次業(yè)務(wù)多次請求服務(wù)的情況。
4、如果在游戲陪玩源碼的多線(xiàn)程和分布式環(huán)境下,由于數據一致性導致重復判斷失效,就會(huì )出現業(yè)務(wù)被重復處理的情況。
二、用限流解決重復提交問(wèn)題
1、前端把關(guān)不嚴
在游戲陪玩源碼開(kāi)發(fā)服務(wù)端時(shí),可以對用戶(hù)提交的時(shí)間跨度進(jìn)行限流,例如設置為5秒1次,則用戶(hù)在5秒內只能進(jìn)行一次提交操作,如果出現了重復提交操作前端會(huì )向用戶(hù)提示服務(wù)端返回的錯誤碼,并跳轉到結果查詢(xún)頁(yè)面。
2、程序出現錯誤
在游戲陪玩源碼開(kāi)發(fā)時(shí),服務(wù)端可以對同一用戶(hù)的提交進(jìn)行時(shí)間跨度的限流,在規定時(shí)間內如果出現了重復提交的情況則給予像增加限流時(shí)限這種類(lèi)型的限流懲罰,,以此來(lái)降低外部程序異常為服務(wù)的影響。
3、程序重試
在游戲陪玩源碼中,只需要在業(yè)務(wù)的發(fā)起處進(jìn)行重試設置,像中間服務(wù)發(fā)起提交行為就沒(méi)有必要進(jìn)行重試設置,限流處理可以在上層引入,并針對合適的限流目標設置適合的限流閾值和限流時(shí)間跨度,像比較可靠的內部服務(wù)就沒(méi)有引入限流的必要。
4、重復判斷失效
在游戲陪玩源碼中,可以通過(guò)分布式一致性的限流算法保證重復判斷結果的有效性,在規定的時(shí)間段內只進(jìn)行一次提交操作,這樣業(yè)務(wù)就不會(huì )被重復處理了。
其實(shí)限流也并不是解決重復提交問(wèn)題完美的方式,但卻是一種通用且成本很低的方式,相比其他方法而言,限流能在有限的成本中,很大程度的降低重復提交。限流在實(shí)現時(shí),還需要游戲陪玩源碼前后端的其他配合,這樣才能發(fā)揮出更好的效果。