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