主頁 > 資料庫 > 第十章-資料庫恢復技術

第十章-資料庫恢復技術

2022-11-30 08:35:21 資料庫

10.1 事務的基本概念:

  • 什么是事務?事務是用戶定義的一個資料庫操作序列,該操作要么全做,要么全不做,是一個不可分割的作業單位,是恢復(知識點)和并發控制(知識點)的基本單位
  • 事務和程式的區別
    • 在關系資料庫中,一個事務可以是一條SQL陳述句,或多條SQL陳述句,或整個程式
    • 一個程式可以有多個事務
  • 事務定義:- 正常結束和例外結束
    • 正常結束: -- 正常執行后,SQL的操作就寫回到磁盤中
      • BEGIN TRANSCTION; -- 事務開始
            SQL 陳述句; 
        COMMIT; -- 事務提交
    • 例外結束:--例外結束,SQL的所以操作都撤銷,回到事務開始前

      • BEGIN TRANSCTION; -- 事務開始
            SQL 陳述句; 
        ROLLBACK; -- 事務回滾
  • 事務的特性: -- 考試考

    • 特征:原子性、一致性、隔離性、持續性
    • 原子性:
      • 事務是資料庫的邏輯作業單位,事務中包括的諸操作要么不做,要么全做
    • 一致性:
      • 先理解什么是一致性?就是用戶A讀學生表資料為99,用戶B讀取就不能是100,必須是99一致的
      • 事務的執行結果必須是使資料庫從一個一致性狀態到另一個一致性狀態
      • 一致狀態:資料庫中只包含成功事務提交結果
      • 不一致狀態:資料庫系統運行在發生故障,有些事務被迫中斷過(如斷了),這些未完成的事務對資料庫做了一部分修改,寫入了物理資料庫,這時候資料庫就處于不正確的狀態 -- 解決辦法事務回滾,資料恢復           
    • 原子性和一致性的舉例:
      • 銀行轉賬,那些就必須定義為一個事務,兩個操作全做,如用戶A給用戶B轉1萬,用戶A減少一萬,突然斷電,那么用戶減少1萬,用戶B要沒有加上1萬,這就是不一致狀態,如果成功就是一致狀態      
    • 隔離性:
      • 一個事務執行不能被其它事務干擾(如交叉執行事務),即一個事務的內部操作及使用的資料對其他并發事務是隔離的,并發執行的各個事務之間都不能相互干擾
    • 持久性:-- 也叫永久性
      • 一個事務一旦提交,對資料庫中資料的改本就是永久性的,接下來的操作或故障對其執行結果沒有影響
    • 事務是恢復和并發控制的基本單位,保證事務ACID特征是事務管理的重要任務
    • 事務ACID日志可能遭到破壞的因素有:
      • 多個事務并發運行,不同事務的操作交叉執行
        • 資料庫管理系統必須保證多個事務的交叉運行不影響這些事務的隔離性  
      • 事務在運行程序中被強行停止  
        • 資料庫管理系統必須保證被強行終止的事務對資料庫和其他事務沒有任何影響 

10.2 資料庫的恢復概述:

  • 故障是不可避免的,故障主要包括:計算機硬碟故障、軟體的錯誤、操作員的失誤、惡意的破壞等
  • 故障對資料的影響主要表現為:運行事務非正常中斷,影響資料庫中的資料正確性、資料庫全部或部分丟失資料等
  • 資料庫恢復作用:把資料庫從錯誤狀態恢復到某一已知的正確狀態的功能
  • 資料庫恢復子系統是資料庫管理系統的一個重要組成部分,而且還相當龐大,常常占整個資料庫系統代碼的10%以上,恢復技術是衡量系統的性能優劣的重要指標,以為對系統的可靠程度起到決定因素                            

10.3 故障的種類:

  • 故障的種類大致分為四類: 事務內部的故障、系統故障、介質故障(介質==硬體)、計算機病毒
  • 1.事務內部的故障:
    • 事務內部的故障有的是可以通過事務程式本身發現的(如轉賬的例子)有的是非預期的,不能由事務程式處理的 
    • 細節1:事務的內部更多的故障的是非預期的,是不能由應用程式處理的,如演算法溢位、死鎖
    • 細節2:事務的故障意味著事務沒有達到預期的終點,資料庫可能處于不正確狀態,撤銷該事務已經作出任何對資料庫的修改,使得該事務好像根本沒有啟動一樣,這類恢復操作稱為:事務撤銷 
  • 2.系統故障:
    • 系統故障又稱軟故障,是指系統正常運行突然被破壞,記憶體在的緩沖區資訊全部丟失去,所有正在運行的事務都非正確終止
      • 常見原因:CPU故障,作業系統故障、資料庫系統代碼錯誤、系統斷電
    • 系統故障的恢復:
      • 常見問題1:系統發生故障,一些未完成的事務結果已經寫入到物理資料庫(磁盤),造成資料庫處于不正確狀態
        • 恢復辦法:系統重新啟動,恢復程式重新讓所有的非正常終止的事務回滾,強行撤銷所有未完成事務
      • 常見問題2:系統發生故障,某些已經完成的事務可能還留在緩沖區,沒有寫到物理資料庫中,因為沒有寫入,導致執行事務的操作(如:增刪改查),全部丟失,導致資料庫資料不一致
        • 恢復辦法:系統重新啟動,撤銷所有未完成的事務,還需要重做,所有提交的事務,將資料庫恢復到一致狀態 
  • 3.介質故障:
    • 介質故障又硬故障,是指外存故障,如磁盤損壞、磁頭碰撞,強磁干擾等
    • 故障表現:破壞資料庫或部分資料庫 
  • 4.計算機病毒:
    • 計算機病毒是一種可繁殖、傳播并對計算機造成破壞
    • 計算機病毒特點:隱蔽性、潛伏性、傳染性、破壞性、寄生性
    • 資料庫本病毒破壞時,仍要用恢復技術來恢復
  • 小結:
    • 1.故障對資料庫的影響主要是資料庫本身被破壞和,資料沒有被破壞,但資料不正確
    • 2.恢復操作的基本原理就是冗余(就是備份),符合子系統的代碼一般要占到全部代碼的10%以上 

10.4 恢復的實作實作技術:

  • 恢復資料的關鍵就是創建冗余(備份)資料,然后利用執行冗余資料進行資料庫恢復

  • 建立冗余資料的常見方法:
      資料轉儲:就是把資料建立一個備份,然后存盤在另外一臺設備上
      日志檔案:就是事務對資料庫進行了什么操作都記錄下來

  • 通過資料轉存和日志檔案就可以把資料庫符合到某一個正確的結點
          如:7月15號到9月20號,9月20號發生錯誤,7月15號進行了資料轉儲,在通過日志檔案把資料庫恢復到9月20號沒有發生故障的狀態                            

10.4.1 資料轉儲:

  • 什么是資料轉儲?就是把資料建立一個備份,然后存盤在另外一臺設備上,這些備份的資料文本稱為后備副本或后援副本
  • 注意:后備副本只是把資料庫恢復到轉儲的狀態,要想符合到故障發生的狀態,還需要進行轉儲后的所有更新事務
  • 轉儲狀態:靜態轉儲與動態轉儲
    • 靜態轉儲:需要中系統無任何事務進行時進行轉儲操作,轉儲期間不允許對資料庫進行增刪改查
      例子:如游戲服務器正在維護,玩家都不能進入,就沒有新的事務發生,那么就可以進行靜態轉儲
      優點:實作方便
      缺點:降低了資料庫的可用性,以為需要等轉儲結束,新的事務才能開始
    • 動態轉儲:事務和轉儲并發進行,轉儲期間允許對資料庫進行增刪改查
      例子:轉儲期間,剛把事務A的100記錄到磁盤上,某一事務就將A改成了200,后備副本上的A資料就過時了
      優點:不用等正在運行的用戶事務結束,不會影響新事務的運行
      缺點:不能保證副本中的資料真時有效(看上面例子就知道為什么了)
  • 細節1:利用動態轉儲得到副本,還需要把各事務(就是并發的事務)對資料庫的修改記錄下來,建立成日志檔案,通跟后備副本和日志檔案就能把資料庫恢復到某人正確的結點
  • 細節2:利用靜態轉儲得到副本,就不需要把事務記錄下來,以為靜態記錄的就是正確的,而且它轉儲也不可能有事務進行
  • 轉儲方式:

    • 海量轉儲:每次轉儲全部資料庫
      增量轉儲:轉儲上一次轉儲后更新過的資料
      海量和增量比較:
        從恢復角度看,使用海量轉儲得到的后備副本進行恢復更加方便,因為轉儲的是全部資料庫,
        如果資料庫較大,事務處理頻繁,增量就更實用更有效,因為事務多資料老是在變化,就不可能每次都海量轉儲

  • 轉儲分類:

    • 通過轉儲狀態和轉儲方式可以分為4類:動態海量轉儲、靜態海量轉儲、動態增量轉儲、靜態增量轉儲  

 

10.4.2 登記日志檔案:

  • 日志的主要目的:記錄事務等資料庫的更新操作的檔案(注意是更新操作,因為查詢沒有影響)
  • 記錄日志的兩種格式,單位的日志檔案和資料塊單位的日志檔案:(這些操作都是由于資料庫自動來完成)
  • 單位的日志檔案需要登記的內容:
    • 1.各事務開始的標簽
      2.個事務結束的標準(正確結束,的還是非正常結束的標簽)
      3.各事務的所有更新操作
      以上3條記錄的操作記錄為一個日志記錄

  • 每條日志記錄的內容:

    • 事務標識(標明是哪各事務)
      操作型別(插入、洗掉或修改)
      操作物件(如操作是哪個表,哪條資料)
      更新前資料的舊值(如果是插入,該項就是空值)
      更新后資料的新值(如果是洗掉,該項就是空值)

  • 資料塊為單位的日志檔案需要登記的內容:

    • 1.事務標識
      2.被更新的資料塊 - 就是以一整個事務為一個單位

  • 日志檔案的作用:

    • 1.事務故障恢復
      2.系統故障恢復
      3.配合后備副本進行介質故障恢復

 

 

  • 登錄日志檔案要遵循兩條原則:
    • 1.登錄的次序嚴格按并發事務執行的時間次序
      2.必須先寫日志檔案,后寫資料庫(如果先寫資料庫,如果突然斷電,資料庫寫了日志沒寫,恢復時就會有影響)

10.5 恢復策略:

  • 同的故障需要不同的恢復策略

10.5.1 事務故障的恢復:

  • 事務的故障是指事務在正常運行至正常終點前被終止
  • 事務故障的恢復是由系統自動完成的,系統的恢復步驟是:
    • 1.反向掃描,查找事務的更新操作
      2.對事務進行撤銷
      3.繼續反向掃描,查找該事務其它的更新查找,并做同樣的處理
      4.直到事務讀到事務開始標識,事務故障符合就完成
      10.5.2 系統的故障

10.5.2 系統的故障:

  • 系統的故障會造成資料庫不一致狀態,原因:
    • 1.未完成的事務的更新操作可能已經寫入資料庫 -- 解決辦法撤銷未完成的事務
      2.已提交的事務可能還停留在緩沖區,沒有寫到資料庫 -- 解決辦法重做已完成的事務

  • 系統故障的恢復由系統在重新啟動時自動完成

10.5.3 介質故障:

  • 介質故障指的是物理資料和日志檔案被破壞
  • 恢復辦法是重裝資料庫,然重做已完成的事務
  • 介質的恢復需要資料庫管理員的介入,資料庫管理員只需要重裝最近轉儲的資料庫副本和有關的日志檔案,然后執行系統提供的恢復命令即可

10.6 具有檢查點的恢復技術:

  • 為什么需要檢查點技術:
    • 在利用日志恢復資料庫恢復時,恢復子系統的時候必須搜索日志,確定哪些事務需要重新做,哪些事務要撤銷
      • 問題1:搜索整個日志需要大量時間
        問題2:重做處理、重新執行,浪費大量時間

  • 解決方案:

    • 1.在日志檔案中增加檢查點記錄
      2.增加重新開始的檔案 - 和日志檔案是并列的,不在日志檔案里面
      3.恢復子系統在登錄日志檔案期間動態地維護日志

  • 檢查點記錄的內容:

    • 1.所有正在執行的事務清單
      2.這些事務最近一個日志記錄地址

  • 重新開始檔案內容:

    • 1.檢查點記錄地址

  • 動態維護日志檔案的方法:

    • 周期性地執行如下操作:建立檢查點、保持資料庫狀態

    • 具體步驟:

      • 1.將當前日志緩沖區的所有日志寫入磁盤的日志檔案
        2.在日志檔案中寫入一個檢查點記錄
        3.將當前的資料緩沖區的所有資料記錄寫入磁盤的資料庫中
        4.把檢查點記錄在日志檔案中的地址寫入重新開始檔案

    • 說明:

      • 恢復子系統可以定期或不定期地建立檢查點,保存資料庫狀態
        檢查點可以按照預定的一個時間來間隔來建立,如一個小時記錄一個檢查點
        也可以按照某種規則建立檢查點,如日志檔案寫到一半建立

  • 利用檢查點恢復策略:

    • 所有檢查點方法可以改善恢復效率
      1.T1在檢查點之前提交,對資料庫的修改已經寫到資料庫
      2.T2在檢查點之后,故障之前,所有需要重做
      3.T3在故障之后需要撤銷
      4.T4在故障點之前提交,需要重做
      5.T5在檢查點之后,故障之前,需要撤銷

  • 系統使用檢查點的恢復步驟:

    • 1.從重新開始檔案找到最后一個檢測點,在日志檔案中的地址,由該地址在日志檔案中找到最后一個檢測點記錄

    • 2.檢查建立后得到所有正在執行的事務清單ACTIVE-LIST(活躍的),分成兩個事務對列:

      • 1.UNNDO-LIST:需要執行撤銷操作的的事務集合

      • 2.REDO-LIST:需要執行重做操作的事務集合
        ACTIVE-LIST暫時放入UNNDO-LIST,只是暫時(要看該事務是在說明時候提交的,如T4就先放程式佇列,但發現它是在故障發前提交就放到重做佇列)

      • 3.從檢查點掃描日志檔案

        • 1.有新的事務就暫時放到UNNDO-LIST
          2.有提交就從UNNDO-LIST放到REDO-LIST - T4案例

      • 4.UNNDO-LIST的每個事務要執行UNNDO操作,REDO-LIST的每個事務要執行REDO操作

10.7 資料庫鏡像:

  • 目的:預防介質故障,提高資料庫可能性
  • 什么是資料庫鏡像:
    • 資料庫管理系統自動把整個資料或其中關鍵資料復雜到另一個磁盤,主資料庫資料更新,資料庫管理系統把更新后的資料復制過去,保證鏡像資料庫與主資料的一致
  • 如果介質出現故障怎么辦:

    • 所有應用去訪問鏡像資料庫,鏡像資料庫有去恢復主資料庫,如果沒有發生故障可以并發操作  

10.8 總結:

  • 1.保證資料庫的一致性是對資料庫的基本要求
    2.事務是資料庫的邏輯作業單位
    3.事務的ACID特征:一致性、隔離性、原子性、持久性
    4.保證了事務ACID特征就是保證了,資料庫的一致性
    5.故障的恢復是,保證事務的,一致性、隔離性、原子性
    6.恢復的基本原理就是利用后備副本、日志檔案、資料庫鏡像中的冗余資料來重構資料庫
    7.事務不僅是恢復的基本單位,也是并發控制的單位
    8.保證事務的一致性、隔離性,資料庫隔離系統需要對并發操作操作進行控制

 

 

   

       

  

      

    

    

  

 

 

      

  

      

  

          

      

 

 

 

 

 

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/538774.html

標籤:SQL Server

上一篇:Redis安裝

下一篇:SQL常用日期格式化轉換與百分數轉換

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • GPU虛擬機創建時間深度優化

    **?桔妹導讀:**GPU虛擬機實體創建速度慢是公有云面臨的普遍問題,由于通常情況下創建虛擬機屬于低頻操作而未引起業界的重視,實際生產中還是存在對GPU實體創建時間有苛刻要求的業務場景。本文將介紹滴滴云在解決該問題時的思路、方法、并展示最終的優化成果。 從公有云服務商那里購買過虛擬主機的資深用戶,一 ......

    uj5u.com 2020-09-10 06:09:13 more
  • 可編程網卡芯片在滴滴云網路的應用實踐

    **?桔妹導讀:**隨著云規模不斷擴大以及業務層面對延遲、帶寬的要求越來越高,采用DPDK 加速網路報文處理的方式在橫向縱向擴展都出現了局限性。可編程芯片成為業界熱點。本文主要講述了可編程網卡芯片在滴滴云網路中的應用實踐,遇到的問題、帶來的收益以及開源社區貢獻。 #1. 資料中心面臨的問題 隨著滴滴 ......

    uj5u.com 2020-09-10 06:10:21 more
  • 滴滴資料通道服務演進之路

    **?桔妹導讀:**滴滴資料通道引擎承載著全公司的資料同步,為下游實時和離線場景提供了必不可少的源資料。隨著任務量的不斷增加,資料通道的整體架構也隨之發生改變。本文介紹了滴滴資料通道的發展歷程,遇到的問題以及今后的規劃。 #1. 背景 資料,對于任何一家互聯網公司來說都是非常重要的資產,公司的大資料 ......

    uj5u.com 2020-09-10 06:11:05 more
  • 滴滴AI Labs斬獲國際機器翻譯大賽中譯英方向世界第三

    **桔妹導讀:**深耕人工智能領域,致力于探索AI讓出行更美好的滴滴AI Labs再次斬獲國際大獎,這次獲獎的專案是什么呢?一起來看看詳細報道吧! 近日,由國際計算語言學協會ACL(The Association for Computational Linguistics)舉辦的世界最具影響力的機器 ......

    uj5u.com 2020-09-10 06:11:29 more
  • MPP (Massively Parallel Processing)大規模并行處理

    1、什么是mpp? MPP (Massively Parallel Processing),即大規模并行處理,在資料庫非共享集群中,每個節點都有獨立的磁盤存盤系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連接,彼此協同計算,作為整體提供 ......

    uj5u.com 2020-09-10 06:11:41 more
  • 滴滴資料倉庫指標體系建設實踐

    **桔妹導讀:**指標體系是什么?如何使用OSM模型和AARRR模型搭建指標體系?如何統一流程、規范化、工具化管理指標體系?本文會對建設的方法論結合滴滴資料指標體系建設實踐進行解答分析。 #1. 什么是指標體系 ##1.1 指標體系定義 指標體系是將零散單點的具有相互聯系的指標,系統化的組織起來,通 ......

    uj5u.com 2020-09-10 06:12:52 more
  • 單表千萬行資料庫 LIKE 搜索優化手記

    我們經常在資料庫中使用 LIKE 運算子來完成對資料的模糊搜索,LIKE 運算子用于在 WHERE 子句中搜索列中的指定模式。 如果需要查找客戶表中所有姓氏是“張”的資料,可以使用下面的 SQL 陳述句: SELECT * FROM Customer WHERE Name LIKE '張%' 如果需要 ......

    uj5u.com 2020-09-10 06:13:25 more
  • 滴滴Ceph分布式存盤系統優化之鎖優化

    **桔妹導讀:**Ceph是國際知名的開源分布式存盤系統,在工業界和學術界都有著重要的影響。Ceph的架構和演算法設計發表在國際系統領域頂級會議OSDI、SOSP、SC等上。Ceph社區得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是國際云計算領域應用最廣泛的開源分布式存盤系統, ......

    uj5u.com 2020-09-10 06:14:51 more
  • es~通過ElasticsearchTemplate進行聚合~嵌套聚合

    之前寫過《es~通過ElasticsearchTemplate進行聚合操作》的文章,這一次主要寫一個嵌套的聚合,例如先對sex集合,再對desc聚合,最后再對age求和,共三層嵌套。 Aggregations的部分特性類似于SQL語言中的group by,avg,sum等函式,Aggregation ......

    uj5u.com 2020-09-10 06:14:59 more
  • 爬蟲日志監控 -- Elastc Stack(ELK)部署

    傻瓜式部署,只需替換IP與用戶 導讀: 現ELK四大組件分別為:Elasticsearch(核心)、logstash(處理)、filebeat(采集)、kibana(可視化) 下載均在https://www.elastic.co/cn/downloads/下tar包,各組件版本最好一致,配合fdm會 ......

    uj5u.com 2020-09-10 06:15:05 more
最新发布
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:33:24 more
  • MySQL中binlog備份腳本分享

    關于MySQL的二進制日志(binlog),我們都知道二進制日志(binlog)非常重要,尤其當你需要point to point災難恢復的時侯,所以我們要對其進行備份。關于二進制日志(binlog)的備份,可以基于flush logs方式先切換binlog,然后拷貝&壓縮到到遠程服務器或本地服務器 ......

    uj5u.com 2023-04-20 08:28:06 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:27:27 more
  • 快取與資料庫雙寫一致性幾種策略分析

    本文將對幾種快取與資料庫保證資料一致性的使用方式進行分析。為保證高并發性能,以下分析場景不考慮執行的原子性及加鎖等強一致性要求的場景,僅追求最終一致性。 ......

    uj5u.com 2023-04-20 08:26:48 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:26:35 more
  • 云時代,MySQL到ClickHouse資料同步產品對比推薦

    ClickHouse 在執行分析查詢時的速度優勢很好的彌補了MySQL的不足,但是對于很多開發者和DBA來說,如何將MySQL穩定、高效、簡單的同步到 ClickHouse 卻很困難。本文對比了 NineData、MaterializeMySQL(ClickHouse自帶)、Bifrost 三款產品... ......

    uj5u.com 2023-04-20 08:26:29 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:25:13 more
  • Redis 報”OutOfDirectMemoryError“(堆外記憶體溢位)

    Redis 報錯“OutOfDirectMemoryError(堆外記憶體溢位) ”問題如下: 一、報錯資訊: 使用 Redis 的業務介面 ,產生 OutOfDirectMemoryError(堆外記憶體溢位),如圖: 格式化后的報錯資訊: { "timestamp": "2023-04-17 22: ......

    uj5u.com 2023-04-20 08:24:54 more
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:24:03 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:23:11 more