成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Linux之《荒島余生》(一)準備篇

douzifly / 2172人閱讀

摘要:我們的目的,就像是荒島余生一樣找到一個信念,在最殘酷的環(huán)境中,生存下去。這樣,會有很多地方會發(fā)生。監(jiān)控值排查問題也是有過程的。比如飽和度一般指資源已完全使用,新請求在特定里排隊。

xin片之爭,已經(jīng)暴露了中國xin的問題,我等碼農(nóng)束手無策;而在操作系統(tǒng)方面,成果也是乏善可陳;現(xiàn)如今酷炫的Web監(jiān)控工具,讓很多研發(fā)喪失了真正處理問題的能力。

越接近底層,就越接近真相,在計算機的世界,同樣適用。

我們的目的,就像是《荒島余生》一樣:找到一個信念,在最殘酷的環(huán)境中,生存下去。說的比較隱晦,其實就是:你換公司了,而你的新公司比較推崇devops,你要自己面對問題。

吹的那么高大上,一副拯救世界的感覺,但本系列的文章知識并不深,很多已經(jīng)在大學里的操作系統(tǒng)見過了,雖然照讀課本的叫獸并不能讓你勾起絲毫興趣。

如果本系列能夠勾起你的些許興趣,就算目的達到了。本來是想要聊仔細點,但由于時間有限,又不是寫書,原理性的東西就不多說了。

內容

文章將會嘗試單純的Cpu、Mem、Net、Disk、IO問題排查,然后組合各種元素,解決一些棘手問題,就是一些常用命令的組合。當然我們是java系的,所以會多一些java方面的討論。如果你不了解行文風格,可以先讀讀:《Java堆外內存排查小結--小姐姐味道》

為什么Linux系統(tǒng)會出現(xiàn)這樣那樣的問題呢?主要的原因就是計算機的各個部件的速度不均衡。Cpu在等cache line,cache 在等內存,內存在等設備。就像在連續(xù)17公里高速下坡路口設個收費站一樣,一不小心就車毀人亡。

設備五花八門,通常我們接觸的設備,就是硬盤和網(wǎng)卡。整個業(yè)務系統(tǒng)和操作系統(tǒng)充斥著各種各樣的緩沖區(qū),CPU要通過中斷負責他們之間的協(xié)調。這樣,會有很多地方會發(fā)生bottleneck。

監(jiān)控值

排查問題也是有過程的。通常,關注一個硬件資源,比如CPU,我們關注以下基本要素:
1) 利用率 一般是瞬時值,屬于采樣范圍,用來判斷有沒有峰值。比如cpu utilization
2) 飽和度 一般指資源已完全使用,新請求在特定queue里排隊。比如cpu load過高
3) 錯誤信息 硬件或者驅動錯誤,比如dmesg命令顯示的OOM
4) 聯(lián)想信息 對引起的原因進行猜測,并用更多的工具驗證猜想。比如系統(tǒng)響應慢猜測大量用到了swap

原因

監(jiān)控值只是一種表象,具體引起的原因才是重點。我們通常希望純粹的資源限制所引起的故障,這種問題都比較好定位。大多數(shù)情況下都沒那么幸運,所以廣度上的信息共享能幫助很多。過程如下:

1) 信息收集 問題起始時間,上下文
2) 改動集合 問題發(fā)生前所有變更列表
3) 問題抽象 將描述抽象成具體的資源問題
4) 問題排查 將信息整理完畢,就可以進行真正的荒野之旅了

測試

本測試用來決定你是不是本文目標受眾,如果無法回答以下問題,建議先看一點基本的Linux知識,這將會節(jié)省你的時間,因為文章不會對此提太多。

io wait 是什么意思?

swap是什么分區(qū),怎么關閉?

/tmp目錄有什么特殊性?

管道是什么東東?

Linux發(fā)行版

接下來熱熱身,瞧瞧Linux有什么發(fā)行版。

將常用腳本加入到PATH中

有些命令組合不好記,頻繁輸入也覺得煩,可以將這些過程整理成腳本,扔到path中。

還記得第一次安裝jdk,添加的環(huán)境變量么?Linux和它類似,不過它有多種shell。

通常我們用的叫bash,平常說的shell腳本就是bash腳本。但也有很多其他好用的shell,比如csh、ksh、zsh等。

查看/etc/shells文件看一下你安裝過的shell

[root@localhost ~]$ cat /etc/shells
/bin/sh
/bin/bash
/bin/zsh
/sbin/nologin
/bin/dash

在個人領域,zsh配合oh-my-zsh(推薦)達到最佳,但服務器一般不會去改你的shell,通過一個環(huán)境變量,能夠看到你當前所使用的shell終端。

[root@localhost ~]$ echo $SHELL
/bin/bash

針對于bash,我們的配置就在用戶目錄下的.bashrc文件中。

在用戶目錄下創(chuàng)建.bin目錄

mkdir ~/.bin

將目錄加入到環(huán)境變量PATH中

echo "export PATH=$PATH:~/.bin/" >> ~/.bashrc

在.bin創(chuàng)建一個文件xjj,內容為
echo "pleasant taste"

cat > ~/.bin/xjj <

給xjj增加可執(zhí)行權限

chmod a+x ~/.bin/xjj 

這樣,使用你的用戶,在任何地方,都可以執(zhí)行xjj了

[root@localhost ~]$ xjj
pleasant taste

真是令人愉悅的味道~

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/8093.html

相關文章

  • Linux生產(chǎn)環(huán)境上,最常用的套“Sed“技巧

    摘要:替換模式以上是命令的常用匹配模式,但它還有一個強大的替換模式,意思就是查找替換其中的某些值,并輸出結果??磧蓚€命令的語法好玩由于正則的關系,很多字符需要轉義。注意前半部分的范圍是不能使用這種方式的。sed命令應用廣泛,使用簡單,是快速文本處理的利器。它其實沒多少技巧,背誦、使用是最合適的學習渠道,屬于硬技能。但它又很復雜,因為高級功能太多。本篇不去關注sed的高級功能,僅對常用的一些操作,進...

    Big_fat_cat 評論0 收藏0
  • 使用Netty,我們到底在開發(fā)些什么?

    摘要:比如面向連接的功能包發(fā)送接收數(shù)量包發(fā)送接收速率錯誤計數(shù)連接重連次數(shù)調用延遲連接狀態(tài)等。你要處理的,就是心跳超時的邏輯,比如延遲重連。發(fā)生異常后,可以根據(jù)不同的類型選擇斷線重連比如一些二進制協(xié)議的編解碼紊亂問題,或者調度到其他節(jié)點。 在java界,netty無疑是開發(fā)網(wǎng)絡應用的拿手菜。你不需要太多關注復雜的nio模型和底層網(wǎng)絡的細節(jié),使用其豐富的接口,可以很容易的實現(xiàn)復雜的通訊功能。 和...

    DesGemini 評論0 收藏0
  • 使用Netty,我們到底在開發(fā)些什么?

    摘要:比如面向連接的功能包發(fā)送接收數(shù)量包發(fā)送接收速率錯誤計數(shù)連接重連次數(shù)調用延遲連接狀態(tài)等。你要處理的,就是心跳超時的邏輯,比如延遲重連。發(fā)生異常后,可以根據(jù)不同的類型選擇斷線重連比如一些二進制協(xié)議的編解碼紊亂問題,或者調度到其他節(jié)點。 在java界,netty無疑是開發(fā)網(wǎng)絡應用的拿手菜。你不需要太多關注復雜的nio模型和底層網(wǎng)絡的細節(jié),使用其豐富的接口,可以很容易的實現(xiàn)復雜的通訊功能。 和...

    MSchumi 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<