iRules使用技巧詳解_第1頁
iRules使用技巧詳解_第2頁
iRules使用技巧詳解_第3頁
iRules使用技巧詳解_第4頁
iRules使用技巧詳解_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、iRules使用技巧詳解北京神州數(shù)碼云科信息技術(shù)有限公司2018年10月目 錄第一章概述41.1什么是iRules41.2 iRules開發(fā)工具iRule Editor5第二章 iRules使用技巧及案例82.1高可用性81、根據(jù)HTTP請(qǐng)求的源地址進(jìn)行負(fù)載選擇:82、根據(jù)HTTP請(qǐng)求的URI進(jìn)行負(fù)載選擇:83、根據(jù)HTTP請(qǐng)求的HOST進(jìn)行負(fù)載選擇:94、實(shí)現(xiàn)選擇性的SNAT:105、根據(jù)JsessionID進(jìn)行會(huì)話保持:116、實(shí)現(xiàn)當(dāng)出現(xiàn)HTTP 500錯(cuò)誤時(shí)自動(dòng)重試:117、使用Cookie方式進(jìn)行HTTP認(rèn)證:122.2 加速141、基于IP地址進(jìn)行寬帶管理:142、選舉型Hash負(fù)載

2、算法:153、針對(duì)延遲大的連接使用HTTP壓縮策略:164、禁止Cache HTTP Post的內(nèi)容:175、根據(jù)文件類型定義HTTP緩存時(shí)間:176、禁止重復(fù)壓縮:182.3 安全191、SSL長(zhǎng)度保障:192、隱藏服務(wù)器資源信息:193、HTTP請(qǐng)求次數(shù)限制:204、將客戶端證書復(fù)制給服務(wù)器:215、基于URI選擇的證書認(rèn)證:216、限制網(wǎng)頁掃描器:227、加密HTTP Cookie:238、DNS flood的防護(hù):242.4 Troubleshooting261、文件類型記錄:262、記錄HTTP 包頭里的內(nèi)容:263、URI完全解碼:274、記錄響應(yīng)時(shí)間較長(zhǎng)的服務(wù)器:285、啟用Go

3、ogle Analytics:296、返回包含客戶端HTTP Header信息的HTML頁面:312.5其它321、如何防止單一用戶connection過多322、如何用iRules實(shí)現(xiàn)LDAP服務(wù)器負(fù)載均衡333、如何使用LTM stream profile替換字符串:394、HTTP 到HTTPS 的安全重定向:395、如何在服務(wù)器的響應(yīng)包中插入內(nèi)容:40第三章優(yōu)化Irules使用的十大技巧411、首選使用profile412、寫iRules前做好規(guī)劃423、選擇最優(yōu)的命令424、合理的使用正則表達(dá)式445、盡量少使用變量456、什么時(shí)候使用變量467、理解多態(tài)性478、利用timing命

4、令優(yōu)化iRules479、利用共享資源4810、了解最新的功能48第四章總結(jié)48第一章 概述1.1什么是iRulesiRules是基于YK TMOS操作系統(tǒng)的開放腳本語言,為YK設(shè)備提供靈活強(qiáng)大的定制功能,基于TCL語法的iRules可以方便的加入到Y(jié)K設(shè)備內(nèi)部,處理通過YK設(shè)備的網(wǎng)絡(luò)流量,控制各種協(xié)議和應(yīng)用數(shù)據(jù)。每個(gè)iRules必須包含事件、命令和邏輯三部分才可以有效運(yùn)行,通過這三個(gè)部分的靈活組合和排序可以定制IP層面以上的數(shù)據(jù)流量處理功能,提高和增強(qiáng)YK設(shè)備的靈活性和功能性。同時(shí),高效的使用iRules定制某些應(yīng)用功能,可以大大降低應(yīng)用系統(tǒng)的研發(fā)成本,簡(jiǎn)化研發(fā)復(fù)雜程度,提高應(yīng)用系統(tǒng)性能,減

5、少計(jì)劃內(nèi)外當(dāng)機(jī)時(shí)間。什么時(shí)候需要用到iRules語言呢?YK設(shè)備支持絕大多數(shù)應(yīng)用交付的標(biāo)準(zhǔn)功能,可以滿足絕大部分IT系統(tǒng)對(duì)這方面的功能及部署要求,但某些應(yīng)用系統(tǒng)對(duì)數(shù)據(jù)控制有著更加精細(xì)的定制要求,或者對(duì)標(biāo)準(zhǔn)協(xié)議的功能支持有更高的要求,這些時(shí)候需要使用iRules來增強(qiáng)YK設(shè)備的功能,實(shí)現(xiàn)這些功能要求。比如,YK的LTM設(shè)備支持基于源地址、COOKIE、目的地址、SSL ID等模式的會(huì)話保持方式,可以滿足大多數(shù)應(yīng)用交付系統(tǒng)對(duì)會(huì)話保持的要求。但大多數(shù)JAVA開發(fā)人員希望使用中間件的SESSION ID作為會(huì)話保持的依據(jù),這樣可以更加方便和準(zhǔn)確的控制應(yīng)用數(shù)據(jù)的后臺(tái)走向,這時(shí)候,使用iRules編寫一段

6、簡(jiǎn)單的代碼并輸入到Y(jié)K設(shè)備中,即可高效的實(shí)現(xiàn)這一功能,滿足應(yīng)用程序的功能需求1.2 iRules開發(fā)工具iRule EditorYK的iRule Editor是一款非常優(yōu)秀的iRules開發(fā)工具,可以從以下站點(diǎn)下載:http:/devcentral.YK.com/。在windows xp及以上操作系統(tǒng)中運(yùn)行,需要.NET Framework運(yùn)行環(huán)境。 需要注意的是,這款軟件是由DevCentral發(fā)布的非官方軟件,YK不對(duì)此軟件提供官方服務(wù)支持;但這樣不代表著iRules的不可靠,事實(shí)上,全球大部分的LTM設(shè)備都在或多或少的使用iRules精細(xì)控制著各種應(yīng)用流量,運(yùn)行高效并且穩(wěn)定。 正常安裝后

7、進(jìn)入使用界面:iRule Editor 支持連接YK 設(shè)備,讀取并存儲(chǔ)設(shè)備中的iRules。 點(diǎn)擊“file”-“connect”配置設(shè)備信息。連接后,你可以開始編寫你的iRules了。iRule Editor內(nèi)置一些iRules的模板,可以選擇并稍加改動(dòng),即可實(shí)現(xiàn)相應(yīng)的功能,非常方便。iRules寫好后,直接save即可存儲(chǔ)到Y(jié)K設(shè)備中,綁定VS后即可工作。 第二章 iRules使用技巧及案例2.1高可用性1、根據(jù)HTTP請(qǐng)求的源地址進(jìn)行負(fù)載選擇:使用場(chǎng)景:可以用來區(qū)別內(nèi)網(wǎng)和外網(wǎng)用戶,并將不同用戶的請(qǐng)求分別轉(zhuǎn)發(fā)到不同的服務(wù)器資源。或者針對(duì)某些特殊地址建立黑白名單,實(shí)現(xiàn)最基本的權(quán)限控制。性能影

8、響:很小。關(guān)聯(lián)性:需要HTTP Profile,Data Group Class。代碼:# The class private_net is a sample class list included on the LTM.# Create a new class under Local Traffic iRules Data Groupclass private_net network /8 network /12 network /16when HTTP_REQUEST if class match IP:client_addr eq

9、uals private_net pool internal_pool else pool default_pool 2、根據(jù)HTTP請(qǐng)求的URI進(jìn)行負(fù)載選擇:使用場(chǎng)景:可以用來根據(jù)用戶所請(qǐng)求的URI進(jìn)行區(qū)分,將針對(duì)不同URI的HTTP請(qǐng)求轉(zhuǎn)發(fā)到不同的服務(wù)器。性能影響:很小。關(guān)聯(lián)性:需要HTTP Profile。代碼:# URI和Pool對(duì)應(yīng)關(guān)系:# 將 轉(zhuǎn)發(fā)到Pool1# 將 轉(zhuǎn)發(fā)到Pool2# 將 轉(zhuǎn)發(fā)到Pool3#when HTTP_REQUEST if HTTP:uri starts_with /america pool pool1 elseif HTTP:uri starts_wit

10、h /europe pool pool2 elseif HTTP:uri starts_with /asia pool pool3 3、根據(jù)HTTP請(qǐng)求的HOST進(jìn)行負(fù)載選擇:使用場(chǎng)景:可以用來根據(jù)用戶所請(qǐng)求的HOST進(jìn)行區(qū)分,將針對(duì)不同HOST的HTTP請(qǐng)求轉(zhuǎn)發(fā)到不同的服務(wù)器。這樣做的優(yōu)勢(shì)在于可以使用一個(gè)IP地址發(fā)布多個(gè)不同域名的網(wǎng)站。性能影響:很小。關(guān)聯(lián)性:需要HTTP Profile。when HTTP_REQUEST switch HTTP:host pool Site1_Pool pool Site2_Pool pool Site3_Pool pool Site4_Pool defa

11、ult pool Default_Pool 4、實(shí)現(xiàn)選擇性的SNAT:使用場(chǎng)景:根據(jù)用戶請(qǐng)求的Host和端口進(jìn)行判斷,如果匹配,則將源地址轉(zhuǎn)換成特定的地址,如果不匹配,則不進(jìn)行地址轉(zhuǎn)換直接轉(zhuǎn)發(fā)。性能影響:很小。關(guān)聯(lián)性:需要先配置Data Group Class。代碼:在Data Group里配置如下兩個(gè)Class:class Hosts 3class Ports 22 80 110when CLIENT_ACCEPTED #檢查請(qǐng)求的目的Host是否屬于之前創(chuàng)建的Hosts Class。 if class match IP:client_ad

12、dr equals Hosts #檢查請(qǐng)求的目的端口是否屬于之前創(chuàng)建的Ports Class。如果匹配就將源地址轉(zhuǎn)換成2。 if class match TCP:server_port equals Ports snat 2 else #如果不屬于定義的Class里的地址和端口,直接轉(zhuǎn)發(fā)而不做地址轉(zhuǎn)換。 forward 5、根據(jù)JsessionID進(jìn)行會(huì)話保持:使用場(chǎng)景:在用戶進(jìn)行HTTP請(qǐng)求的時(shí)候,在包頭的里插入一個(gè)Cookie,或是識(shí)別碼(用于一些不支持Cookie的場(chǎng)景,例如某些手機(jī)),當(dāng)用戶再次發(fā)起新的請(qǐng)球的時(shí)候,可以根據(jù)Cookie

13、里的JsessionID或者是相應(yīng)的特征碼,進(jìn)行會(huì)話保持的判斷。性能影響:很小。關(guān)聯(lián)性:HTTP profile, universal persistence profile。代碼:when HTTP_REQUEST if HTTP:cookie exists JSessionID persist uie HTTP:cookie JSessionID else set jsess findstr HTTP:uri JSessionID 11 ; if $jsess != persist uie $jsess when HTTP_RESPONSE if HTTP:cookie exists JS

14、essionID persist add uie HTTP:cookie JSessionID 6、實(shí)現(xiàn)當(dāng)出現(xiàn)HTTP 500錯(cuò)誤時(shí)自動(dòng)重試:使用場(chǎng)景:當(dāng)服務(wù)器可用資源不足而返回HTTP 錯(cuò)誤代碼500時(shí),并不把這個(gè)響應(yīng)代碼返回給客戶端,而是讓客戶端重新發(fā)起請(qǐng)求,如果連續(xù)四次的請(qǐng)求,服務(wù)器仍然返回錯(cuò)誤代碼500,則將該代碼返回給客戶端。性能影響:很小。關(guān)聯(lián)性:HTTP profile。代碼: when HTTP_REQUEST set my_url HTTP:hostHTTP:uri if HTTP:cookie BIGIP contains Redirect set count findst

15、r HTTP:cookie BIGIP Redirect_ 9 1 else set count 0 when HTTP_RESPONSE if HTTP:status = 500 & $count $S set S md5 $NHTTP:uri set W $N pool myPool member lindex $W 0 lindex $W 13、針對(duì)延遲大的連接使用HTTP壓縮策略:使用場(chǎng)景:通過計(jì)算用戶的延遲,采用不同的壓縮策略,在下面的例子里,如果往返時(shí)延大于100毫秒,則應(yīng)用Level5的壓縮策略;如果時(shí)延在50-100毫秒之間,應(yīng)用Level1的壓縮策略;如果時(shí)延在50毫秒以下,

16、不應(yīng)用壓縮策略。性能影響:很小。關(guān)聯(lián)性:HTTP profile,Compression。代碼: # RTT returns latency as 1/32 of a millisecond,# so 1600=50ms, 3200=100ms, etcwhen HTTP_REQUEST set rtt TCP:rttwhen HTTP_RESPONSE if $rtt 3200 COMPRESS:enable COMPRESS:gzip level 5 elseif $rtt 1600 COMPRESS:enable COMPRESS:gzip level 1 4、禁止Cache HTTP

17、Post的內(nèi)容:使用場(chǎng)景:當(dāng)用戶的行為是HTTP Post的時(shí)候,在YK上禁用Cache功能。針對(duì)其它的動(dòng)作,允許YK Cache相應(yīng)的內(nèi)容。性能影響:很小。關(guān)聯(lián)性:HTTP profile,RAMCache。代碼: when HTTP_REQUEST if HTTP:method equals POST CACHE:disable else CACHE:enable 5、根據(jù)文件類型定義HTTP緩存時(shí)間:使用場(chǎng)景:使用Data Group Class將不同的文件類型定義在不同的Class里,將一些允許緩存時(shí)間比較長(zhǎng)的文件,例如jpg、gif、ico、png等類型,Cache-Control里

18、的max-age字段設(shè)置為3600秒。而一些變化較為頻繁的文件,例如css、js、html等,Cache-Control里的max-age字段設(shè)置為300秒,從而實(shí)現(xiàn)為不同類型文件設(shè)置不同緩存時(shí)間的功能。性能影響:很小。關(guān)聯(lián)性:HTTP profile, Data Group Class。代碼:class cache_60min .gif .ico .jpeg .jpg .pngclass cache_5min .css .html .jswhen HTTP_REQUEST set uri HTTP:uriwhen HTTP_RESPONSE if class match $uri ends_

19、with cache_5min HTTP:header replace Cache-Control max-age=300 elseif class match $uri ends_with cache_60min HTTP:header replace Cache-Control max-age=3600 6、禁止重復(fù)壓縮:使用場(chǎng)景:如果在LTM后端有一個(gè)可以壓縮HTTP流量的代理設(shè)備(例如WebAccelerator),使用這段iRules讓流量在經(jīng)過后面的代理設(shè)備的時(shí)候不被壓縮。性能影響:很小。關(guān)聯(lián)性:HTTP profile, Compression。代碼:when HTTP_REQU

20、EST if HTTP:header exists X-PvMAC if HTTP:header exists Accept-Encoding HTTP:header remove Accept-Encoding 2.3 安全1、SSL長(zhǎng)度保障:使用場(chǎng)景: 強(qiáng)制要求HTTPS請(qǐng)求過程中客戶端的SSL證書長(zhǎng)度超過128位,如果達(dá)不到這個(gè)要求,iRules可以對(duì)客戶端流量進(jìn)行多種方式的處理:重定向到錯(cuò)誤頁面。限制用戶權(quán)限將用戶請(qǐng)求直接Reset。性能影響:很小。關(guān)聯(lián)性:HTTP profile。代碼:when HTTP_REQUEST if SSL:cipher bits 1 if clock s

21、econds = $start_time if $reqs_sec 5 HTTP:respond 503 Retry-After 2 incr reqs_sec return set start_time clock seconds set reqs_sec 04、將客戶端證書復(fù)制給服務(wù)器:使用場(chǎng)景:將客戶端的SSL證書里的關(guān)鍵內(nèi)容,插入到HTTP包頭中,傳遞給服務(wù)器。并通過Log記錄下來,以便進(jìn)一步的安全評(píng)估。性能影響:很小。關(guān)聯(lián)性:HTTP profile。代碼:when HTTP_REQUEST set c_cert SSL:cert 0 if $c_cert contains bad

22、options HTTP:header insert ClientCertificate NONE # log local0. Client IP:client_addr connected without a valid certificate else HTTP:header insert ClientCertStatus X509:verify_cert_error_string SSL:verify_result HTTP:header insert ClientCertSerial X509:serial_number $c_cert HTTP:header insert Clien

23、tCertIssuer X509:issuer $c_cert HTTP:header insert ClientCertSubject X509:subject $c_cert 5、基于URI選擇的證書認(rèn)證:使用場(chǎng)景:當(dāng)用戶請(qǐng)求的頁面匹配在Class里預(yù)先定義的URI的時(shí)候,要求客戶端提交證書,并將客戶端請(qǐng)求的證書加入到HTTP包頭中,轉(zhuǎn)發(fā)給服務(wù)器。性能影響:中等。關(guān)聯(lián)性:HTTP profile,Data Group Class。代碼:class secure_uri /humanresources /confidential /privatewhen CLIENTSSL_CLIENTCE

24、RT HTTP:release if SSL:cert count 1 reject when HTTP_REQUEST if class match HTTP:uri starts_with secure_uri if SSL:cert count 0 HTTP:header insert X-SSL-Session-IDSSL:sessionid HTTP:header insert X-SSL-Client-Cert-StatusX509:verify_cert_error_string SSL:verify_result HTTP:header insert X-SSL-Client-

25、Cert-SubjectX509:subject SSL:cert 0 HTTP:header insert X-SSL-Client-Cert-IssuerX509:issuer SSL:cert 0 6、限制網(wǎng)頁掃描器:使用場(chǎng)景:當(dāng)網(wǎng)站需要允許一些特定的網(wǎng)站掃描器(例如百度和Google的推廣),但是又不希望這樣的訪問占用太多的帶寬,便可以用通過識(shí)別User-agent的方式,對(duì)掃描的流量進(jìn)行限制,或者是轉(zhuǎn)發(fā)到單獨(dú)的服務(wù)器。此外,也可能通過這種方式對(duì)掃描的類型進(jìn)行限制,以阻止?jié)撛诘墓?。性能影響:很小。關(guān)聯(lián)性:HTTP profile,Rateshaping,Data Group Clas

26、s。代碼: class bots baidu msnbot googlebotwhen HTTP_REQUEST if class match string tolower HTTP:header User-Agent contains bots rateclass rateshape_256k pool slow_webbot_pool else pool default_pool 7、加密HTTP Cookie:使用場(chǎng)景:針對(duì)所有Cookie,在離開Virtual Server時(shí)對(duì)它進(jìn)行加密,并在重新進(jìn)入Virtual Server時(shí)進(jìn)行解密。使用HTTP Profile也同樣可以實(shí)現(xiàn)類似

27、的功能,但是它需要手動(dòng)對(duì)Cookie的類型進(jìn)行設(shè)置,使用該iRules可以自動(dòng)加密所有的Cookie。性能影響:中等。關(guān)聯(lián)性:HTTP profile。代碼: when RULE_INIT # 設(shè)置公開密鑰, 這個(gè)密鑰可以通過主備同步方式同步到對(duì)端,主備切換時(shí)不會(huì)出現(xiàn)中斷。 set :passphrase secret #設(shè)置私有密鑰,但是這個(gè)密鑰無法同步到對(duì)端,所以說當(dāng)主備發(fā)生切換的時(shí)候,所有加密過的Cookie#都會(huì)失效。 # set :passphrase AES:keywhen HTTP_REQUEST foreach cookieName HTTP:cookie names HTTP

28、:cookie decrypt $cookieName :passphrase when HTTP_RESPONSE foreach cookieName HTTP:cookie names HTTP:cookie encrypt $cookieName :passphrase 8、DNS flood的防護(hù):使用場(chǎng)景:設(shè)置在600秒內(nèi),只允許用戶進(jìn)行100次DNS請(qǐng)求。如果在這個(gè)時(shí)間間隔內(nèi),超過了100次請(qǐng)求的話,便將該用戶加入到黑名單,將其所有的請(qǐng)求全部丟棄,直至達(dá)到600秒時(shí)間間隔的超時(shí)時(shí)間之后,將該用戶從黑名單移除,并將新的請(qǐng)求轉(zhuǎn)發(fā)到相應(yīng)的Pool。性能影響:中等。關(guān)聯(lián)性:無代碼: wh

29、en RULE_INIT set :maxquery 100 set :holdtime 600 array set :usertable array set :blacklist when CLIENT_DATA set srcip IP:remote_addr# log src=$srcip set currtime clock second# log currtime=$currtime if info exists :blacklist($srcip) if $:holdtime expr $currtime - $:blacklist($srcip) drop log drop $s

30、rcip return else unset :blacklist($srcip) log remove $srcip from blacklist if info exists :usertable(time,$srcip) and $currtime = $:usertable(time,$srcip) incr :usertable(freq,$srcip) log $srcip$:usertable(time,$srcip)$:usertable(freq,$srcip) if $:usertable(freq,$srcip) $:maxquery log new blacklist

31、member with $:usertable(freq,$srcip) times set :blacklist($srcip) $currtime unset :usertable(freq,$srcip) unset :usertable(time,$srcip) drop return else set :usertable(freq,$srcip) 1 set :usertable(time,$srcip) $currtime# log new member pool dnsserver2.4 Troubleshooting1、文件類型記錄:使用場(chǎng)景:如果需要查看WEB服務(wù)器返回了哪

32、些類型的文件,我們可以通過配置了Statistics profile 的Virtual Server,配合以下的iRules得到統(tǒng)計(jì)的信息,從而確定哪些類型的文件適用于RamCache功能,哪些類型的文件適用于WebAccelerator功能。以及哪些文件被訪問的頻率最高。統(tǒng)計(jì)信息可以在Statistics - Profiles Statistics中查看到。性能影響:很小。關(guān)聯(lián)性:Statistics profile,HTTP profile。代碼: when HTTP_RESPONSE switch -glob HTTP:header Content-type image/* STATS:

33、incr ContentType Images text/html STATS:incr ContentType HTML text/css STATS:incr ContentType Stylesheets *javascript STATS:incr ContentType Scripts text/vbscript STATS:incr ContentType Scripts application/pdf STATS:incr ContentType Documents application/msword STATS:incr ContentType Documents appli

34、cation/*powerpoint STATS:incr ContentType Documents application/*excel STATS:incr ContentType Documents default STATS:incr ContentType Other 2、記錄HTTP 包頭里的內(nèi)容:使用場(chǎng)景:可以將所有的HTTP Request和Response的內(nèi)容全部記錄到Log里。Log的目錄是/var/log/ltm。這些信息可以對(duì)我們的Troubleshooting過程會(huì)有很大幫助。性能影響:中等。關(guān)聯(lián)性:HTTP profile。代碼: when HTTP_REQUE

35、ST set LogString Client IP:client_addr:TCP:client_port - HTTP:hostHTTP:uri log local0. = log local0. $LogString (request) foreach aHeader HTTP:header names log local0. $aHeader: HTTP:header value $aHeader log local0. =when HTTP_RESPONSE log local0. = log local0. $LogString (response) - status: HTTP:

36、status foreach aHeader HTTP:header names log local0. $aHeader: HTTP:header value $aHeader log local0. = 3、URI完全解碼:使用場(chǎng)景:在處理URI里某些特殊字符的時(shí)候(例如引號(hào),百分號(hào),空格等),必須保證該URI被完全的解碼。在這個(gè)過程中可能要對(duì)URI進(jìn)行多次解碼,以防止一些特殊字符被誤認(rèn)為是解碼之后的字符。性能影響:中等。關(guān)聯(lián)性:HTTP profile。代碼: when HTTP_REQUEST # decode original URI. set tmpUri HTTP:uri set

37、 uri URI:decode $tmpUri # repeat decoding until the decoded version equals the previous value. while $uri ne $tmpUri set tmpUri $uri set uri URI:decode $tmpUri HTTP:uri $uri # log local0. Original URI: HTTP:uri # log local0. Fully decoded URI: $uri4、記錄響應(yīng)時(shí)間較長(zhǎng)的服務(wù)器:使用場(chǎng)景:針對(duì)每個(gè)想要監(jiān)控的URI,定義一個(gè)平均的訪問時(shí)間(單位為毫秒),如果用戶訪問的時(shí)間超過定義的平均時(shí)間,YK會(huì)在Log里記錄響應(yīng)時(shí)間,訪問的URI,客戶端地址,以及相對(duì)應(yīng)的服務(wù)器地址。Log存放在/var/log/ltm文件里,這樣有利于精確的定位訪問速度慢的服務(wù)器。性能影響:很小。關(guān)聯(lián)性:HTTP profile。代碼: when HTTP_REQUEST set request_time clock clicks -milliseconds set url HTTP:pathwhen HTTP_RESPONSE switch -glob $url /logo.gif set threshold 3000 /

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論