自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

關(guān)于隨機恢復(fù)性能優(yōu)化的小結(jié)

運維 數(shù)據(jù)庫運維
最近在進一步優(yōu)化隨機恢復(fù)的成功率問題,本來預(yù)計是2周內(nèi)能夠快速結(jié)束,從1個9的恢復(fù)能力快速提升到2個9,結(jié)果這個Flag立下了,但是最終的結(jié)果和付出的努力遠比想象中要高。

[[380664]]

 

最近在進一步優(yōu)化隨機恢復(fù)的成功率問題,本來預(yù)計是2周內(nèi)能夠快速結(jié)束,從1個9的恢復(fù)能力快速提升到2個9,結(jié)果這個Flag立下了,但是最終的結(jié)果和付出的努力遠比想象中要高。

其實有很多同學(xué)不大理解為什么2個9那么難,整體來說,數(shù)據(jù)備份是基于一次全量永遠增量的模式,數(shù)據(jù)量會不斷增長,所以數(shù)據(jù)是動態(tài)變化的,另外如何恢復(fù)數(shù)據(jù)的需求是動態(tài)的,比如我可以隨機指定1個時間,比如這一次是2:00,下一次可能是3:20,不確定的時間就會給已有的服務(wù)帶來新的潛在不確定性,此外絕大多數(shù)的問題是在數(shù)據(jù)庫啟動期間發(fā)生,通常會和存儲容量,插件配置,參數(shù)配置相關(guān),如果報錯,盡管手工修復(fù)也可以搞定,只要啟動報錯,我們也會按照失敗來計算,所以驗收標準算是比較簡單清晰的。

最近經(jīng)過一段時間的沉淀,發(fā)現(xiàn)成功率竟然從93%下降到了88%,

為了保證恢復(fù)任務(wù)的可執(zhí)行性,目前是采用了crontab的模式,如下:

  1. 30 7-23/3 * * * /usr/bin/python /root/crontab_tasks/random_recover.py  >> /root/crontab_tasks/log/random_recover.log & 
  2. 00 6-22/3 * * * /usr/bin/python /root/crontab_tasks/random_recover.py  >> /root/crontab_tasks/log/random_recover.log & 

為了提高恢復(fù)的吞吐量和效率,目前是使用了3臺恢復(fù)機器來實現(xiàn)基于IDC的動態(tài)調(diào)度。

基于之前的失敗數(shù)據(jù),我的第一輪測試選取了23個樣本,恢復(fù)的過程相對比較快,指定恢復(fù)到dn1這臺恢復(fù)機器后,恢復(fù)成功率達到了100%,有點讓我驚呆。

然后我重新選擇了dn2,再次恢復(fù)了同樣的23個樣本實例,這一次,竟然失敗了3個,而專門再次恢復(fù),就沒有問題了,著實讓我有些意外

通過這樣的測試,我做了進一步的分析,發(fā)現(xiàn)問題主要出現(xiàn)在binlog的回放方面,所以可以初步斷定,在binlog的有效性方面還是存在潛在的問題,目前的隨機時間范圍是在3-24小時之內(nèi),所以我先刻意調(diào)整了時間范圍,把它先縮短。

對于任務(wù)的調(diào)度時間,我進一步分析,發(fā)現(xiàn)還是由潛在的風(fēng)險的,目前的測試基數(shù)還是比較小,按照每3小時執(zhí)行1次,2個定時任務(wù)觸發(fā)的模式,一天差不多會有12個左右的任務(wù)。

這種調(diào)度模式的缺點就是對于任務(wù)的執(zhí)行沒有彈性,如果數(shù)據(jù)恢復(fù)時間超過1個小時,基本上就是失敗了。另外就是dn1,dn2,dn3的任務(wù)選擇也是隨機的,帶來的隱患就是如果dn1被選定恢復(fù),很可能下次還是會隨機為dn1繼續(xù)恢復(fù),就會導(dǎo)致dn2,dn3都始終處于閑置狀態(tài)。

一種較為理想的方式是,可以定制恢復(fù)的基數(shù),比如目前是12次,基本是每隔小時都會觸發(fā)一次,如果我們需要恢復(fù)20次,那么平攤到每臺恢復(fù)機器的調(diào)用次數(shù)差不多是7次,相對來說還是比較寬松的,如果按照強調(diào)度模式,那么可以支撐的基數(shù)最大是48次左右。

如果跟進一步,我們做成即時響應(yīng)模式,即dn1恢復(fù)之后馬上觸發(fā)下一波的恢復(fù)任務(wù),那么這個基數(shù)的提升會直接乘以3,還是比較強悍的。

所以馬上要做的改進就是把這3臺恢復(fù)機器用活,讓他們不要始終處于閑置狀態(tài)。否則就是下面的狀態(tài)。

本文轉(zhuǎn)載自微信公眾號「楊建榮的學(xué)習(xí)筆記」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系楊建榮的學(xué)習(xí)筆記公眾號。

 

責(zé)任編輯:武曉燕 來源: 楊建榮的學(xué)習(xí)筆記
相關(guān)推薦

2014-06-18 14:12:05

Linux KerneLinux內(nèi)核

2021-02-24 07:44:36

MySQL隨機恢復(fù)

2018-06-12 15:30:07

數(shù)據(jù)庫MySQLinsert

2021-09-02 10:10:59

技術(shù)VS Code實踐

2021-06-10 10:02:19

優(yōu)化緩存性能

2010-08-17 13:30:54

DB2數(shù)據(jù)備份

2015-01-14 10:49:53

大文件備份重復(fù)數(shù)據(jù)刪除技術(shù)云端

2020-11-05 09:04:52

MySQL隨機恢復(fù)

2021-01-28 05:15:31

MySQL隨機數(shù)據(jù)

2009-10-29 15:46:56

2018-10-08 11:29:10

2018-08-13 14:47:08

華為云

2009-04-12 09:07:17

Symbian諾基亞移動OS

2017-04-06 14:10:08

JavaScript數(shù)組排序

2021-03-19 11:08:27

開發(fā)技能代碼

2012-03-29 13:56:58

HBase數(shù)據(jù)庫

2023-11-19 23:24:21

Golang開發(fā)

2020-07-23 15:40:28

Commvault

2010-10-14 16:27:56

MySQL隨機查詢

2009-06-06 15:37:22

Hibernate性能
點贊
收藏

51CTO技術(shù)棧公眾號