冪等性處理

最近工作中,因?yàn)橹卦嚢粹o后臺反應(yīng)比較慢。用戶一直點(diǎn),我就一直提交到外部系統(tǒng)了。導(dǎo)致了一個重復(fù)提交問題。雖然不一定有用戶這么做,但確實(shí)會有這樣的問題。這個問題,我現(xiàn)在有兩個思路:
一、加一個緩存。在提交之前,查詢該id是否在緩存中。在就直接返回。不在,就允許提交,提交之前將id存入緩存。提交之后,就將該id從緩存中刪除。這么做的場景能夠在一個線程返回之前,不會重復(fù)提交的問題。但不能解決惡意提交的問題。
二、在傳給前端的時候,加一個token,用令牌機(jī)制。主要是生成多個令牌了。這樣,令牌一過來。直接刪除。下次,再重復(fù)提交,就能解決這個問題。可以從根本上防止重復(fù)提交的問題。更有效。

我選擇了第一種,因?yàn)殚_始并沒有更好的思路。當(dāng)時只有這一種方案,現(xiàn)在回想。應(yīng)該采用第二種更好。下次引以為戒。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • API定義規(guī)范 本規(guī)范設(shè)計基于如下使用場景: 請求頻率不是非常高:如果產(chǎn)品的使用周期內(nèi)請求頻率非常高,建議使用雙通...
    有涯逐無涯閱讀 2,596評論 0 6
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,765評論 18 399
  • 前天去兒子同學(xué)家玩,他家里干凈整潔,進(jìn)門就給人一種舒服的感覺,東西擺放井然有序,各種收納,專門有一個房間放小孩玩具...
    LittlePiggie閱讀 669評論 0 0
  • music.163.com/#/m/song 《回憶那么傷》今天偶爾聽到的,覺得挺適合我現(xiàn)在的心情。 其實(shí)我活的并...
    bobo屋閱讀 275評論 7 0