乳尖春药H糙汉共妻,国产成人无码精品亚洲,少妇肉欲系列1000篇,免费永久看黄神器

公司新聞

詳解Linux 磁盤I/O優(yōu)化(oracle RAC)

作者:admin 日期:2023-10-15 瀏覽:

詳解Linux 磁盤I/O優(yōu)化(oracle RAC)

分享下關(guān)于linux磁盤I/0方面的優(yōu)化,中間插一個(gè)rac方面的報(bào)錯(cuò)解決。

** 動(dòng)態(tài)調(diào)整請(qǐng)求隊(duì)列數(shù)來提高效率,默認(rèn)請(qǐng)求隊(duì)列數(shù)為:128, 可配置512 **

[root@bo queue]# cat /sys/block/sda/queue/nr_requests

128

** read_ahead, 通過數(shù)據(jù)預(yù)讀并且記載到隨機(jī)訪問內(nèi)存方式提高磁盤讀操作,默認(rèn)值 128,ceph配置:8192 **

[root@bo queue]# cat /sys/block/sda/queue/read_ahead_kb

128

** 關(guān)閉最后一次訪問文件(目錄)的時(shí)間戳 **

例如:

mount -t xfs -o defaults,noatime,nodiratime /dev/sda5 /data

** 大文件,大容量,大量文件數(shù)建議使用xfs文件系統(tǒng) **

磁盤IO調(diào)度算法

[root@bo queue]# cat /sys/block/sda/queue/scheduler

noop anticipatory deadline [cfq]

centos6.x默認(rèn)為cfq

調(diào)整為deadline

[root@bo queue]# echo deadline > /sys/block/sda/queue/scheduler

[root@bo queue]# cat /sys/block/sda/queue/scheduler

noop anticipatory [deadline] cfq

PS:這里在用redhat6部署rac的時(shí)候如果沒配置會(huì)提示I/0 scheduler的警告,按上面配置就可以解決了。

I/0 scheduler報(bào)錯(cuò)

多少個(gè)盤寫多少個(gè)

** I/O調(diào)度算法介紹 **

CFQ(完全公平排隊(duì)I/O調(diào)度程序) 默認(rèn)

特點(diǎn):

CFQ試圖均勻地分布對(duì)I/O帶寬的訪問,避免進(jìn)程被餓死并實(shí)現(xiàn)較低的延遲,是deadline和as調(diào)度器的折中.

CFQ賦予I/O請(qǐng)求一個(gè)優(yōu)先級(jí),而I/O優(yōu)先級(jí)請(qǐng)求獨(dú)立于進(jìn)程優(yōu)先級(jí),高優(yōu)先級(jí)的進(jìn)程的讀寫不能自動(dòng)地繼承高的I/O優(yōu)先級(jí).

工作原理:

CFQ為每個(gè)進(jìn)程/線程,單獨(dú)創(chuàng)建一個(gè)隊(duì)列來管理該進(jìn)程所產(chǎn)生的請(qǐng)求,也就是說每個(gè)進(jìn)程一個(gè)隊(duì)列,各隊(duì)列之間的調(diào)度使用時(shí)間片來調(diào)度,

以此來保證每個(gè)進(jìn)程都能被很好的分配到I/O帶寬.I/O調(diào)度器每次執(zhí)行一個(gè)進(jìn)程的4次請(qǐng)求.

NOOP(電梯式調(diào)度程序)

特點(diǎn):

在Linux2.4或更早的版本的調(diào)度程序,那時(shí)只有這一種I/O調(diào)度算法.

NOOP實(shí)現(xiàn)了一個(gè)簡單的FIFO隊(duì)列,它像電梯的工作主法一樣對(duì)I/O請(qǐng)求進(jìn)行組織,當(dāng)有一個(gè)新的請(qǐng)求到來時(shí),它將請(qǐng)求合并到最近的請(qǐng)求之后,以此來保證請(qǐng)求同一介質(zhì).

NOOP傾向餓死讀而利于寫.

NOOP對(duì)于閃存設(shè)備,RAM,嵌入式系統(tǒng)是最好的選擇.

電梯算法餓死讀請(qǐng)求的解釋:

因?yàn)閷懻?qǐng)求比讀請(qǐng)求更容易.

上海數(shù)據(jù)恢復(fù)

寫請(qǐng)求通過文件系統(tǒng)cache,不需要等一次寫完成,就可以開始下一次寫操作,寫請(qǐng)求通過合并,堆積到I/O隊(duì)列中.

讀請(qǐng)求需要等到它前面所有的讀操作完成,才能進(jìn)行下一次讀操作.在讀操作之間有幾毫秒時(shí)間,而寫請(qǐng)求在這之間就到來,餓死了后面的讀請(qǐng)求.

Deadline(截止時(shí)間調(diào)度程序)

特點(diǎn):

通過時(shí)間以及硬盤區(qū)域進(jìn)行分類,這個(gè)分類和合并要求類似于noop的調(diào)度程序.

Deadline確保了在一個(gè)截止時(shí)間內(nèi)服務(wù)請(qǐng)求,這個(gè)截止時(shí)間是可調(diào)整的,而默認(rèn)讀期限短于寫期限.這樣就防止了寫操作因?yàn)椴荒鼙蛔x取而餓死的現(xiàn)象.

Deadline對(duì)數(shù)據(jù)庫環(huán)境(ORACLE RAC,MYSQL等)是最好的選擇.

AS(預(yù)料I/O調(diào)度程序)

特點(diǎn):

本質(zhì)上與Deadline一樣,但在最后一次讀操作后,要等待6ms,才能繼續(xù)進(jìn)行對(duì)其它I/O請(qǐng)求進(jìn)行調(diào)度.

可以從應(yīng)用程序中預(yù)訂一個(gè)新的讀請(qǐng)求,改進(jìn)讀操作的執(zhí)行,但以一些寫操作為代價(jià).

它會(huì)在每個(gè)6ms中插入新的I/O操作,而會(huì)將一些小寫入流合并成一個(gè)大寫入流,用寫入延時(shí)換取最大的寫入吞吐量.

AS適合于寫入較多的環(huán)境,比如文件服務(wù)器

AS對(duì)數(shù)據(jù)庫環(huán)境表現(xiàn)很差.

** I/O調(diào)度算法總結(jié) **

Anticipatory I/O scheduler 適用于大多數(shù)環(huán)境,但不太合適數(shù)據(jù)庫應(yīng)用

Deadline I/O scheduler 通常與Anticipatory相當(dāng),但更簡潔小巧,更適合于數(shù)據(jù)庫應(yīng)用, DATA/SAS盤

CFQ I/O scheduler 為所有進(jìn)程分配等量的帶寬,適合于桌面多任務(wù)及多媒體應(yīng)用,默認(rèn)IO調(diào)度器

NOOP I/O scheduler 適用于SSD盤,有RAID卡,做了READ的盤

濱海數(shù)據(jù)恢復(fù)

** sysctl.conf針對(duì)磁盤優(yōu)化 **

vm.swappiness = [0 - 10] 默認(rèn)是60,太高了,如果是緩存服務(wù)器建議配置為0

1、關(guān)閉日志功能

2、fstab里加掛載參數(shù)data=writeback

3、啟用 TRIM 功能

Linux內(nèi)核從2.6.33開始提供TRIM支持,所以先運(yùn)行“uname -a”命令,查看自己的內(nèi)核版本,如果內(nèi)核版本低于2.6.33的,請(qǐng)先升級(jí)內(nèi)核。

然后運(yùn)行“hdparm -I /dev/sda”查看自己的硬盤支不支持TRIM技術(shù),如果支持,你會(huì)看到

Data Set Management TRIM supported

如果上面兩個(gè)條件都滿足了,就可以在fstab中添加discard來開啟TRIM功能,如:

原始的UUID=

2f6be0cf-2f54-4646-b8c6-5fb0aa01ef23 / ext4 defaults,errors=remount-ro 0 1

改后的UUID=

2f6be0cf-2f54-4646-b8c6-5fb0aa01ef23 / ext4 discard,defaults,errors=remount-ro 0 1

上面是針對(duì)oracle RAC做的一些磁盤IO優(yōu)化,建議大家在虛擬機(jī)先測試一波,后面會(huì)分享更多關(guān)于devops和DBA方面內(nèi)容,感興趣的朋友可以關(guān)注下!!

  電話咨詢

<abbr id="ehohq"><form id="ehohq"><small id="ehohq"></small></form></abbr>
  • <menu id="ehohq"><dl id="ehohq"></dl></menu>

    1. <bdo id="ehohq"><span id="ehohq"></span></bdo>
        主站蜘蛛池模板: 江阴市| 巫溪县| 浦城县| 葵青区| 浮梁县| 乌兰察布市| 宁化县| 西宁市| 宁海县| 曲靖市| 石林| 马公市| 鄂托克旗| 仁布县| 邢台县| 柞水县| 德保县| 阳西县| 西乌珠穆沁旗| 民勤县| 永嘉县| 铜川市| 兰考县| 商都县| 涟源市| 伊宁市| 黑河市| 临湘市| 海口市| 岳普湖县| 孝感市| 唐河县| 泽普县| 和静县| 巴马| 什邡市| 涟水县| 金秀| 天长市| 曲水县| 霍州市|