2013-04-24 201 views
4

我是redis的新手。我有一個應用程序,我有多個redis命令進行交易。如果其中一個失敗,redis會像關係數據庫一樣回滾事務嗎?用戶是否有責任回滾交易?Redis事務回滾

回答

4

Redis不會像關係數據庫那樣回滾事務。

如果你有一個關係型數據庫的背景,但事實上,Redis命令可以在交易過程中發生故障,但仍Redis的將執行事務的剩餘部分,而不是回滾,可能看起來很奇怪你。

但是也有這種行爲很好的意見:

  • Redis命令只能失敗,如果調用一個錯誤的語法(和命令隊列中的問題是檢測不到),或對鍵抱着錯誤數據類型:這意味着實際上失敗的命令是編程錯誤的結果,以及在開發過程中很可能檢測到的一種錯誤,而不是在生產中。

  • Redis內部簡化且速度更快,因爲它不需要回滾功能。

檢查它從文檔Why redis does not support rollback transactionshere