雲端計算之路-阿里雲上:Web伺服器遭遇奇怪的“黑色30秒”問題
今天下午訪問高峰的時候,主站的Web伺服器出現奇怪的問題,開始是2臺8核8G的雲伺服器(ECS),後來又加了1臺8核8G的雲伺服器,問題依舊。
而且3臺伺服器特地使用了不同的配置:1臺是禁用了虛擬記憶體的臨時磁碟雲伺服器,1臺是啟用了虛擬記憶體的臨時磁碟雲伺服器,1臺是禁用了虛擬記憶體的雲盤雲伺服器。這樣排除了磁碟IO與虛擬記憶體的原因。
問題的表現是這樣的(以下監視截圖來自Windows效能監控器Performance Monitor):
1. ASP.NET請求執行時間(Request Execution Time)變慢
通常請求執行時間在100ms以下,而出問題時竟然達到了近1.5s,發生時間為15:18:09。
2. IIS當前連線數(Current Connections)突增
IIS當前連線數通常在10左右,出現問題時先跳高至67,後跳高至270多,說明IIS處理請求的能力下降,開始發生的時間點是15:18:06。
可見IIS當前連線數突增早於ASP.NET請求執行時間變慢。
3. CPU佔用下降
CPU在15:18:07到達高點之後,一直往下掉,在15:18:14掉至最低點。
CPU下降發生於IIS當前連線數突增之後。
4. 請求出現排隊現象(Requests Queued)
Requests Queued正常情況下是0,只有在請求處理不過來的時候才會出現排隊現象。請求排隊開始於15:18:05,早於IIS當前連線數突增。
5. ASP.NET請求處理能力下降(Requests/Sec)
15:18:05開始,ASP.NET的請求處理能力下降,與請求排隊開始於同一時間。
我們給上面的5個現象排個序:請求處理能力下降(Requests/Sec)-> 請求排隊(Requests Queued)-> 當前連線數突增(Current Connections)-> CPU佔用下降 -> 請求執行時間變慢(Request Execution Time)
然後再來看另外一次問題發生時的現象:
1. Requests/Sec下降(棕色)與Requests Queued出現(藍色)
Requests Queued在高點達1007。
2. Request Execution Time變慢(紫色)與Current Connections突增(綠色)
Current Connections在高點達1586。
3. 加上CPU佔用率,5個指標疊在一起
【分析】
Requests/Sec下降、Requests Queued上升、Request Execution Time變慢、Current Connections突增,這些說明在什麼地方卡住了;而CPU佔用下降說明不是因為負載高CPU處理不過來,而是卡在了其他環節,比如IO。
之前遇到比這還奇怪的“黑色10秒鐘”(詳見雲端計算之路-阿里雲上:超級奇怪的“黑色10秒鐘”),現象有點類似,但有2個地方不同:
1. 這次持續時間是30秒(所以把這次問題命名為“黑色30秒”)。
2. “黑色10秒鐘”期間Requests/Sec會下降為0;而“黑色30秒”期間Requests/Sec只是下降,沒有為0,也就是說還在處理請求,只是因為某些資源出現瓶頸,請求處理能力下降。
之前的“黑色10秒鐘”是因為虛擬化對spinlock的支援問題引起的,改用Windows Server 2012解決了問題。
這次呢?應用的問題,Windows的問題,還是阿里雲的問題?這是個問題!目前還不知道從何處下手。
期待您的寶貴建議!
相關推薦
雲端計算之路-阿里雲上:Web伺服器遭遇奇怪的“黑色30秒”問題
今天下午訪問高峰的時候,主站的Web伺服器出現奇怪的問題,開始是2臺8核8G的雲伺服器(ECS),後來又加了1臺8核8G的雲伺服器,問題依舊。 而且3臺伺服器特地使用了不同的配置:1臺是禁用了虛擬記憶體的臨時磁碟雲伺服器,1臺是啟用了虛擬記憶體的臨時磁碟雲伺服器,1臺是禁用了虛擬記憶體的雲盤雲伺服器。這樣排
雲端計算之路-阿里雲上:結合IIS日誌分析“黑色30秒”問題
在昨天針對“黑色30秒”問題的分析中,我們猜測Requests Queued上升是由於正在處理的請求出不去(到達不了客戶端)。今天我們結合IIS日誌驗證這個猜測。 IIS日誌中有一個重要的指標——time-taken,time-taken不僅包含了請求在服務端執行的時間,還包含了響應的內容從服務端到達客戶端
雲端計算之路-阿里雲上:從ASP.NET執行緒角度對“黑色30秒”問題的全新分析
在這篇博文中,我們拋開對阿里雲的懷疑,完全從ASP.NET的角度進行分析,看能不能找到針對問題現象的更合理的解釋。 “黑色30秒”問題現象的主要特徵是:排隊的請求(Requests Queued)突增,到達HTTP.SYS的請求數(Arrival Rate)下降,QPS(Requests/Sec)下降,CP
雲端計算之路-阿里雲上:藉助IIS Log Parser Studio分析“黑色30秒”問題
今天下午15:11-15:13間出現了類似“黑色30秒”的狀況,我們用強大的IIS日誌分析工具——Log Parser Studio進行了進一步的分析。 分析情況如下—— 先看一下Windows效能監視器中的問題表現: 然後用Log Parser Studio分析07:11:55與07:13:55(
雲端計算之路-阿里雲上:排查“黑色30秒”問題-為什麼請求會排隊
針對Web伺服器“黑色30秒”問題(詳見雲端計算之路-阿里雲上:Web伺服器遭遇奇怪的“黑色30秒”問題),經過分析,我們準備從這個地方下手——為什麼會出現\ASP.NET\Request Queued大於0的情況(為什麼請求會排隊)? 首先, 通過Windows效能監視器去觀察,看能不能找到這樣的線索——
雲端計算之路-阿里雲上:對“黑色30秒”問題的猜想
在雲上,底層的東西你無法觸及,遇到奇怪問題時只能靠猜想,所以使用雲端計算會鍛鍊你的想像力。 (上圖中藍色是ASP.NET的Requests Queued,另外一個是HTTP.SYS的Arrival Rate) 昨天我們發現了一個重要的線索——“黑色30秒”到來時,最初的表現是請求出現排隊(Reques
Android 小白 的 學習之路 之 阿里雲上 Tomcat Web伺服器的搭建以及配置
1 、擁有一個自己的阿里雲ESC伺服器(因為我的是windows server 這裡就以我自己的為例) 2 、在阿里雲伺服器下載並且安裝 java jdk 3、配置環境變數
雲端計算之路-新篇章-出海記:開篇
2012年10月30日,我們因為和阿里雲的合作,開始了雲端計算之路的第一篇章。 2020年10月30日,我們因為和 AWS 的合作,將開啟雲端計算之路的第二篇章——出海記。 我們將在 AWS 上建設園子的海外站,並將整個過程與大家分享。 我們很好奇,在阿里雲上開車7年多,在 A
雲端計算之路-出海記:整一臺 aws 免費雲伺服器
上次蹭到一張船票,登上了 aws 這艘巨輪,今天要在船上的免費餐廳吃一頓免費晚餐 —— 整一臺 aws 免費套餐中的 EC2 伺服器體驗一下。 進入 EC2 控制檯,點選“啟動例項”,進入 AMI 系統映象選擇頁面,勾選“僅免費套餐”,從
雲端計算之路-試用Azure:搭建自己的內網DNS伺服器
之前我們寫過一篇博文談到Azure內建的內網DNS伺服器不能跨Cloud Service,而我們的虛擬機器部署場景恰恰需要跨多個Cloud Service,所以目前只能選擇用Azure虛擬機器搭建自己的內網DNS伺服器。這篇博文分享的是我們在Azure上搭建自己的內網DNS
雲端計算之路-出海記:蹭一張 aws 船票
出海記開篇之後,在 aws 上搭建部落格園海外站的出海計劃今天開始邁出第一步 —— 註冊一個 aws 海外區域賬號。 aws 現在針對新註冊使用者提供12個月免費套餐(正在園子裡推廣並提供了專屬註冊通道),正好借這個活動蹭一張有座的 aws 船票。 aws 中國區域與海外區域都有1
雲端計算之路-出海記-小目標:Hello World from .NET 5.0 on AWS
品嚐過船上的免費晚餐,眺望著 aws 上搭建部落格園海外站的巨集偉目標,琢磨著眼前可以實現的小目標,不由自主地在螢幕上敲出了 —— "Hello World!",就從這個最簡單樸實的小目標開始吧 —— 用 ASP.NET Core on .NET 5.0 在 A
雲端計算之路-出海記:命令列下的 AWS
俗話說“三百六十行,行行出狀元”,自從有了電腦之後,三百六十行又多了一行 —— 命令列。GUI 的誕生開創了繁榮的 PC “視窗”(windows)時代,網際網路的誕生給 GUI 家族增添新成員 Web UI,移動互相網的誕生又幫 GUI 家族生下了二胎 Mobile UI,但用情專一的程式設計師念念不忘的依
雲端計算之路-出海記:建一個免費倉庫 Amazon RDS for SQL Server
上週由於園子[後院起火](https://www.cnblogs.com/cmt/tag/%E8%83%8C%E9%94%85%E6%A1%88/),不得不調兵回去救火,出海記暫時停更,這周繼續更新,“出海記”記錄的是我們在 AWS 上建設部落格園海外站的歷程。 在這一記中記錄的是我們基於 AWS [免費套
成為阿里雲架構師的進階之路——阿里雲首批ACE認證通過者逸疏專訪
自2018年3月阿里雲釋出雲端計算架構師ACE(Alibaba Cloud Certified Expert,阿里雲認證高階工程師)級別認證後,上線不到3個月,吸引了近百位業界優秀從業者參與考試。獲得阿里雲ACE認證,對於業界資深架構師來說,是自身實力的最好證明。阿里雲大學致
雲端計算之路-虛擬化環境搭建及虛擬機器建立
1. 前言 在計算機技術中,虛擬化(Virtualization)是一種資源管理技術,它將計算機相關的各種資源(CPU、記憶體、磁碟、網路介面卡等)進行抽象、轉換後重新分配使用,大大增加了使用的靈活性。虛擬化有很多類別,包括硬體虛擬化、作業系統級虛擬化、應用虛擬化、服務
阿里雲上建立FTP伺服器和使用者
簡介 FTP 是File Transfer Protocol(檔案傳輸協議)的英文簡稱,而中文簡稱為“文傳協議”。用於Internet上的控制檔案的雙向傳輸。同時,它也是一個應用程式(Application)。基於不同的作業系統有不同的FTP應用程式,而所有這些應用程式
阿里雲上搭建webRTC 伺服器——Licode
阿里雲上搭建webRTC 伺服器——Licode 系統配置 阿里雲伺服器 Ubuntu 14.04.5 LTS Docker 環境搭建 在一臺空的機器上搭建docker環境,先要安裝docker,執行下面的命令即可: apt-get update apt-get install docker.io
在阿里雲上搭建Git 伺服器
作業系統: CentOS 6.5 客戶端作業系統:Mac 1、安裝Git $ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
雲計算之路-阿裏雲上:攻擊的受害者,阿裏雲的罪人
小時 影響 安全 流量攻擊 dos 今天 被人 .html logs 今天下午13:39-13:44開始,我們遭受了更大規模的攻擊,4臺負載均衡因被攻擊被阿裏雲雲盾屏蔽。在成為流量攻擊受害者的同時,也成為阿裏雲的罪人,因影響阿裏雲網絡穩定性的罪名被關入阿裏雲的大牢&mdas