日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

oralce load的时候使用触发器会导致load慢吗_你真的了解性能压测中的SLA吗?

發(fā)布時(shí)間:2024/8/23 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oralce load的时候使用触发器会导致load慢吗_你真的了解性能压测中的SLA吗? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者簡(jiǎn)介:襄玲(花名),阿里巴巴技術(shù)專家,PTS 研發(fā),近期主導(dǎo)整理和推動(dòng)云時(shí)代性能壓測(cè)的思想和標(biāo)準(zhǔn),云計(jì)算性能測(cè)試國(guó)標(biāo)項(xiàng)目組成員,內(nèi)部穩(wěn)定性保障系統(tǒng)之預(yù)熱系統(tǒng)負(fù)責(zé)人。

本文是《Performance Test Together》(簡(jiǎn)稱PTT)系列專題分享的第6期,該專題將從性能壓測(cè)的設(shè)計(jì)、實(shí)現(xiàn)、執(zhí)行、監(jiān)控、問(wèn)題定位和分析、應(yīng)用場(chǎng)景等多個(gè)緯度對(duì)性能壓測(cè)的全過(guò)程進(jìn)行拆解,以幫助大家構(gòu)建完整的性能壓測(cè)的理論體系,并提供有例可依的實(shí)戰(zhàn)。

本文主要介紹如何正確的使用SLA來(lái)確定備容的目標(biāo),同時(shí)提高壓測(cè)效率。主要分為理論和實(shí)踐兩個(gè)部分。

SLA無(wú)處不在

在云計(jì)算時(shí)代,越來(lái)越多企業(yè)的服務(wù)遷移到云上,各大云服務(wù)廠商有自己服務(wù)發(fā)布的SLA,比如阿里云的ECS服務(wù)器/RDS服務(wù)/REDIS服務(wù)等,都有對(duì)應(yīng)的SLA,SLA是服務(wù)提供商與客戶之間定義的正式承諾。

除了云服務(wù)廠商,提供各種服務(wù)的APP/網(wǎng)站,如果在客戶在購(gòu)物時(shí)無(wú)法下單/或者在周末刷著小視頻的視頻打不開(kāi)了,這個(gè)會(huì)嚴(yán)重影響用戶的體驗(yàn),如果故障出現(xiàn)的時(shí)間比較久,會(huì)流失一大批的客戶,給業(yè)務(wù)帶來(lái)?yè)p失。那么,如何衡量給客戶提供的服務(wù)質(zhì)量呢?進(jìn)而如何衡量系統(tǒng)的穩(wěn)定性呢?毋庸置疑,也需要統(tǒng)一的語(yǔ)言SLA。那么,具體什么是SLA呢?

在新系統(tǒng)上線,大促以及系統(tǒng)面臨大的架構(gòu)調(diào)整等各種場(chǎng)景中,架構(gòu)組以及開(kāi)發(fā)人員,需要提前為系統(tǒng)進(jìn)行備容,對(duì)系統(tǒng)進(jìn)行性能壓測(cè),在壓測(cè)過(guò)程中,與SLA又有什么聯(lián)系呢?

SLA定義

服務(wù)級(jí)別協(xié)議(英語(yǔ):service-level agreement,縮寫SLA)也稱服務(wù)等級(jí)協(xié)議、服務(wù)水平協(xié)議,是服務(wù)提供商與客戶之間定義的正式承諾[維基百科定義]。SLA的概念,對(duì)互聯(lián)網(wǎng)公司來(lái)說(shuō)就是網(wǎng)站服務(wù)可用性的一個(gè)保證。

SLA包括兩個(gè)要素,一個(gè)是SLI,一個(gè)是SLO,其中SLI定義的是測(cè)量指標(biāo);SLO定義的是服務(wù)提供的一種狀態(tài)。

SLI:SLI是經(jīng)過(guò)仔細(xì)定義的測(cè)量指標(biāo),它根據(jù)不同系統(tǒng)特點(diǎn)確定要測(cè)量什么,SLI的確定是一個(gè)非常復(fù)雜的過(guò)程。SLI確定測(cè)量的具體指標(biāo),在確定具體指標(biāo)的時(shí)候,需要做到該指標(biāo)能否準(zhǔn)確描述服務(wù)質(zhì)量以及該指標(biāo)是否可靠。

SLO:SLO(服務(wù)等級(jí)目標(biāo))指定了服務(wù)所提供功能的一種期望狀態(tài),包含所有能夠描述服務(wù)應(yīng)該提供什么樣功能的信息。一般描述為:每分鐘平均qps > 100k/s;99% 訪問(wèn)延遲 < 500ms;99% 每分鐘帶寬 > 200MB/s。

設(shè)置SLO時(shí)的幾個(gè)最佳實(shí)踐:

  • 指定計(jì)算的時(shí)間窗口

  • 使用一致的時(shí)間窗口(XX小時(shí)滾動(dòng)窗口、季度滾動(dòng)窗口)

  • 要有一個(gè)免責(zé)條款,比如:95%的時(shí)間要能夠達(dá)到SLO

SLA以面向人員的維度區(qū)分,可以劃分為以下兩個(gè)維度。

第一:業(yè)務(wù)維度:客戶對(duì)這部分的指標(biāo)最有體感,直接與用戶的體驗(yàn)好壞掛鉤。

  • 例如,響應(yīng)時(shí)間,錯(cuò)誤率等。有統(tǒng)計(jì)數(shù)據(jù)顯示,如果響應(yīng)時(shí)間大于1s,80%的用戶就會(huì)流失掉;錯(cuò)誤率指標(biāo),是對(duì)功能正確性的保障,如果開(kāi)始有業(yè)務(wù)錯(cuò)誤,那么客戶都無(wú)法直接完成期望的操作,流失也是避免不了的。這部分的指標(biāo)直接影響用戶的體驗(yàn)。

第二:服務(wù)側(cè)維度:描述的是服務(wù)端的指標(biāo),這部分指標(biāo)主要是面向開(kāi)發(fā)以及測(cè)試人員的,為了在發(fā)生問(wèn)題的時(shí)候,可以快速定位問(wèn)題。

  • 比如,ECS/RDS等的系統(tǒng)指標(biāo),包括 CPU/LOAD等。

壓測(cè)中的SLA

在進(jìn)行性能壓測(cè)設(shè)計(jì)階段,有一個(gè)重要的環(huán)節(jié)是確定“性能壓測(cè)通過(guò)標(biāo)準(zhǔn)”。缺少了這個(gè)標(biāo)準(zhǔn),意味著壓測(cè)可能是沒(méi)完沒(méi)了的,誰(shuí)都不知道什么時(shí)候該結(jié)束,影響性能壓測(cè)效果,浪費(fèi)人力財(cái)力。所以需要通過(guò)“性能壓測(cè)通過(guò)標(biāo)準(zhǔn)”中一系列量化下來(lái)的指標(biāo)來(lái)確定,壓測(cè)結(jié)果是否符合預(yù)期,可以停止了。這個(gè)"標(biāo)準(zhǔn)"的來(lái)源,可能是來(lái)自業(yè)務(wù)方的期望,研發(fā)組對(duì)系統(tǒng)的性能期望等等,最終整理匯總下來(lái)的我們稱為壓測(cè)中的SLA。這個(gè)SLA與產(chǎn)品對(duì)外的SLA有緊密聯(lián)系,但是又存在區(qū)別。聯(lián)系就是,系統(tǒng)對(duì)外的SLA是壓測(cè)中的SLA的重要來(lái)源,而區(qū)別就是,壓測(cè)中的SLA可能會(huì)涵蓋更多更細(xì)的指標(biāo),而對(duì)外的SLA并不關(guān)心這么多細(xì)節(jié)。

在正確壓測(cè)嗎?

在壓測(cè)中,看似一個(gè)簡(jiǎn)單的業(yè)務(wù)請(qǐng)求,實(shí)則后端是復(fù)雜的系統(tǒng)架構(gòu),比如統(tǒng)一接入層/容器層/存儲(chǔ)層,即使容器層,也涉及到了很多不同應(yīng)用/不同服務(wù),面對(duì)紛繁復(fù)雜的架構(gòu),如何快速判斷壓測(cè)結(jié)果是否滿足了業(yè)務(wù)需求?如何快速判斷是否達(dá)到了系統(tǒng)的水位不能再往上施壓了呢?

作為備容的一份子(開(kāi)發(fā)或者測(cè)試),可以想象一下,常態(tài)是怎樣的?

一聲號(hào)令,開(kāi)始?jí)簻y(cè)!好了,A開(kāi)發(fā)看A系統(tǒng),B開(kāi)發(fā)看B系統(tǒng),C開(kāi)發(fā)看網(wǎng)絡(luò)層,D測(cè)試看壓測(cè)結(jié)果等。大家手忙腳亂,這個(gè)時(shí)候,有人在群里一聲喊,我的系統(tǒng)扛不住了,停止吧(當(dāng)然還有一種風(fēng)險(xiǎn),是不是這位同學(xué)的誤判呢)。好的,這個(gè)時(shí)候壓測(cè)停止。當(dāng)然這種還是比較好的情況,而有些壓測(cè)場(chǎng)景,就只有一個(gè)測(cè)試同學(xué),他怎么分工呢?一會(huì)看看壓測(cè)結(jié)果,一會(huì)看看A系統(tǒng),一會(huì)看看B系統(tǒng),忙得不亦樂(lè)乎。

這樣壓測(cè)能否達(dá)到效果,當(dāng)然能。但是這樣的狀態(tài)是最好的一種狀態(tài)嗎?當(dāng)然不是!這個(gè)時(shí)候SLA就派上用場(chǎng)了。

  • 首先,開(kāi)發(fā)/測(cè)試/業(yè)務(wù)同學(xué)在壓測(cè)之前,對(duì)齊SLA指標(biāo),即意味著明確系統(tǒng)需要持續(xù)提供的服務(wù)能力,以及系統(tǒng)的整體水位,減少后續(xù)的溝通流程,大家都以此目標(biāo)備容。

  • 其次,配置好SLA之后,壓測(cè)的負(fù)責(zé)人則只需要重點(diǎn)關(guān)注是否存在SLA告警,如果連續(xù)告警則說(shuō)明系統(tǒng)已經(jīng)扛不住了,直接停止壓測(cè)或者由SLA直接停止壓測(cè)。對(duì)于壓測(cè)的小伙伴來(lái)說(shuō),省時(shí)省力,既不會(huì)漏掉一些指標(biāo),同時(shí)也不會(huì)浪費(fèi)壓測(cè)時(shí)間。

如何在PTS中正確使用SLA

想象一下,開(kāi)發(fā)同學(xué)都在忙,只有“我”一個(gè)測(cè)試人員有時(shí)間全盤盯著壓測(cè)。壓測(cè)起來(lái)之后,直接把不合格的業(yè)務(wù)維度數(shù)據(jù)以及系統(tǒng)維度數(shù)據(jù),統(tǒng)統(tǒng)通知給“我”,“我”只是決策要不要停止壓測(cè),同時(shí)直接產(chǎn)出系統(tǒng)容量水位報(bào)告,這樣是不是爽歪歪?PTS就提供了這樣的功能,即設(shè)置SLA。設(shè)置SLA需要基于采集到的各種指標(biāo),采集的指標(biāo)越豐富,則SLA越豐富,越能滿足不同業(yè)務(wù)的需求。

在具體使用中,首先了解PTS提供的指標(biāo),然后選取與自己業(yè)務(wù)相契合的指標(biāo)并設(shè)置對(duì)應(yīng)的閾值,最后進(jìn)行壓測(cè)。

首先,了解一攬子指標(biāo)

監(jiān)控指標(biāo),可以分為客戶端相關(guān)指標(biāo),即業(yè)務(wù)維度指標(biāo);另一個(gè)是服務(wù)端相關(guān)指標(biāo)。

  • 客戶端監(jiān)控指標(biāo),是最直觀的判斷系統(tǒng)提供的服務(wù)是否滿足了業(yè)務(wù)的訴求,PTS提供了RPS/請(qǐng)求失敗RPS/響應(yīng)時(shí)間等指標(biāo)。

  • 服務(wù)端相關(guān)指標(biāo),則是從研發(fā)人員角度區(qū)分的,一方面服務(wù)端系統(tǒng)的表現(xiàn)會(huì)直接影響客戶端的各個(gè)指標(biāo),是聯(lián)動(dòng)的。另一方面,在客戶端或者服務(wù)端出現(xiàn)問(wèn)題的時(shí)候,可以更加方便的定位到問(wèn)題。PTS服務(wù)端指標(biāo),包含了SLB/ECS/RDS等相關(guān)組件的監(jiān)控?cái)?shù)據(jù)。

第二,選取核心指標(biāo)并設(shè)置閾值

  • 首先,客戶端的SLA指標(biāo)包含了 RT/RPS/成功率三個(gè)指標(biāo),分別從 響應(yīng)時(shí)間/可用性以及訪問(wèn)負(fù)載 描述了客戶端的訪問(wèn)是否正常,直接反映了客戶的使用體感,以及提供的核心服務(wù)是否在提供可持續(xù)性可用的服務(wù);客戶端的指標(biāo)通常需要測(cè)試人員與業(yè)務(wù)方根據(jù)具體的業(yè)務(wù)具體設(shè)定。

    • 成功率是一個(gè)衡量系統(tǒng)是否可用的核心指標(biāo)。同時(shí)成功率優(yōu)先考慮的是業(yè)務(wù)成功率,若未設(shè)置業(yè)務(wù)成功率,則是code碼等默認(rèn)的成功率。

    • RT反映了客戶訪問(wèn)網(wǎng)站的速度,一般情況下,互聯(lián)網(wǎng)用戶都不是特別有耐心。KissMetrics 的研究結(jié)果顯示,“1 秒的網(wǎng)頁(yè)響應(yīng)延遲可能會(huì)導(dǎo)致轉(zhuǎn)化次數(shù)減少 7%”,“47% 的消費(fèi)者都希望網(wǎng)頁(yè)能夠在 2 秒內(nèi)加載完畢”。

    • RPS則是系統(tǒng)能承載的最大的RPS,也即系統(tǒng)容量最大水位。

  • 其次,服務(wù)端的指標(biāo),包括了SLB/ECS/RDS 三個(gè)層面的指標(biāo),每個(gè)層面的指標(biāo),由具體組件提供服務(wù)的特點(diǎn)決定。例如ECS指標(biāo)包括 CPU/內(nèi)存利用率/LOAD ;SLB指標(biāo)包括 丟棄連接數(shù)/異常后端server數(shù);RDS指標(biāo)包括 CPU/內(nèi)存利用率/IOPS/連接利用率;這部分的指標(biāo)大部分情況下由開(kāi)發(fā)人員確定,有個(gè)大的規(guī)則,比如CPU一般不超過(guò)80%,LOAD不超過(guò)核數(shù)的1.5倍等,具體情況具體分析。

第三,選擇好指標(biāo),以及為指標(biāo)設(shè)置好對(duì)應(yīng)的閾值之后,就可以放心的壓測(cè)了。在壓測(cè)中,如果觸發(fā)了設(shè)定的SLA則進(jìn)行報(bào)警,或者直接停止壓測(cè)。同時(shí)還會(huì)有事件的匯總信息。

這樣,通過(guò)前期各方對(duì)齊相應(yīng)的SLA指標(biāo),并且在PTS中設(shè)置SLA,既可以對(duì)齊目標(biāo),又可以解放壓測(cè)過(guò)程中的人力,很直觀的看到哪些指標(biāo)達(dá)到了閾值。未設(shè)置SLA之前,大家手忙腳亂的觀看各種指標(biāo)數(shù)據(jù),生怕漏掉,而加了SLA之后,就可以喝著茶把壓測(cè)做完。同時(shí),除了通過(guò)設(shè)置SLA幫助小伙伴們更好的提高壓測(cè)效率外,我們還會(huì)將SLA與智能壓測(cè)相結(jié)合,大家敬請(qǐng)期待。

小結(jié)

SLA無(wú)處不在,本文主要從SLA是什么,壓測(cè)過(guò)程中設(shè)置SLA的意義,以及如何正確使用SLA進(jìn)行了簡(jiǎn)述。正確利用并設(shè)置SLA,讓壓測(cè)不再手忙腳亂。有不同意見(jiàn)處請(qǐng)指正,謝謝!

高可用架構(gòu)

改變互聯(lián)網(wǎng)的構(gòu)建方式

總結(jié)

以上是生活随笔為你收集整理的oralce load的时候使用触发器会导致load慢吗_你真的了解性能压测中的SLA吗?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。