度小滿金融運維面試總結


1、運維工作中自己做的遇到的、感覺有深度、對自己提升最大的項目有哪些?

  這個問題就是考察自己在工作中遇到的一些問題的總結,說的明白一點就是工作經驗,有一點就是要表現出自己的優勢

2、參數在配置的時候,如何做合理配置?

  這里考查的是我的tomcat服務器的內存溢出問題中的參數是根據什么來配置的,這里我們的永久內存是根據物理內存來設置的,默認是物理內存的1/64,設置時不能超過物理內存。

3、設置參數超過了物理內存后有什么后果?

  當應用程序需要的內存超出堆的最大值時服務器就會提示內存溢出,並且導致應用服務崩潰。因此一般建議堆的最大值設置為可用內存的最大值的80%

4、一個進程啟動后,它的操作內存空間是多大的?(這個問題沒遇到過,找的答案)

  LINUX下的進程可尋址空間同樣為4G(在32位機器上),共享內存的機制就是兩個進程(也可以更多)的共享部分的邏輯地址所指向的物理頁面相同,也就是說共享一段內存時,唯一的開銷就是頁表,當然,它的虛擬邏輯地址是要占位的,也就是你所說的要記在這段4G的范圍內

5、進程和線程的區別

  進程是操作系統資源分配的基本單位,而線程是任務調度和執行的基本單位

  在操作系統中能同時運行多個進程(程序);而在同一個進程(程序)中有多個線程同時執行(通過CPU調度,在每個時間片中只有一個線程執行)

6、僵屍進程和孤兒進程

  子進程先於父進程退出后,子進程的PCB需要其父進程釋放,但是父進程並沒有釋放子進程的PCB,這樣的子進程就稱為僵屍進程,僵屍進程實際上是一個已經死掉的進程。將它掛在后台執行,可以看到結果,用ps可以看到子進程后有一個<defunct> ,defunct是已死的,僵屍的意思,可以看出這時的子進程已經是一個僵屍進程了。因為子進程已經結束,而其父進程並未釋放其PCB,所以產生了這個僵屍進程。

  一個父進程退出,而它的一個或多個子進程還在運行,那么那些子進程將成為孤兒進程。孤兒進程將被init進程(進程號為1)所收養,並由init進程對它們完成狀態收集工作。子進程死亡需要父進程來處理,那么意味着正常的進程應該是子進程先於父進程死亡。當父進程先於子進程死亡時,子進程死亡時沒父進程處理,這個死亡的子進程就是孤兒進程。

7、進程間的通信方式 (這個問題需要深究)

  管道、消息隊列、共享內存、信號量、socket、信號、文件鎖

  進程間通信(IPC,InterProcess Communication)是指在不同進程之間傳播或交換信息。

8、查找目錄下五天前的文件

  find . -name "*.sh" -mtime -5 

9、查看進程信息

  ps -l   列出與本次登錄有關的進程信息;

  ps -aux   查詢內存中進程信息;

  ps -aux | grep ***   查詢***進程的詳細信息;

  top   查看內存中進程的動態信息;

10、查看CPU使用率

  top命令可以看到總體的系統運行狀態和cpu的使用率 

  sar 例如每1秒采集一次CPU使用率,共采集5次。sar -u 1 5

  如果需要查看某顆cpu的使用可以用-P參數。例如指定顯示0號cpu 的使用情況。 sar -P 0 -u 1 5

  mpstat  每1秒收集一次,共5次。mpstat 1 5

11、top命令中load average的含義(這個問題需要深究)

  top命令中load average顯示的是最近1分鍾、5分鍾和15分鍾的系統平均負載

12、CPU的內核態和用戶態 (這個問題需要深究)

  內核態: 
  1.系統中既有操作系統的程序,也有普通用戶程序。為了安全性和穩定性,操作系統的程序不能隨便訪問,這就是內核態。即需要執行操作系統的程序就必須轉換到內核態才能執行
  2. 內核態可以使用計算機所有的硬件資源

  用戶態:不能直接使用系統資源,也不能改變CPU的工作狀態,並且只能訪問這個用戶程序自己的存儲空間

13、查看磁盤使用率(某一個目錄)

  du -sh  目錄

14、端口被占用怎么解決

  輸入你想要查的正在占用的端口號,netstat -ano|findstr 8080 (Windows命令),此時會顯示端口8080對應的tcp號,終止了8080端口的運行進程,就可以運行了。

15、軟硬鏈接區別

  軟鏈接可以理解成快捷方式。它和windows下的快捷方式的作用是一樣的。 
  硬鏈接等於cp -p 加 同步更新。

16、刪除原文件后軟硬鏈接有什么區別

  硬鏈接沒有絲毫地影響,因為它 inode 所指向的區塊由於有一個硬鏈接在指向它,所以這個區塊仍然有效,並且可以訪問到。
  然而軟鏈接的 inode 所指向的內容實際上是保存了一個絕對路徑,當用戶訪問這個文件時,系統會自動將其替換成其所指的文件路徑,然而這個文件已經被刪除了,所以自然就會顯示無法找到該文件了。

17、shell中單引號、雙引號、反引號的區別

  單引號:不管單引號里面有什么都原樣輸出,無視一切變量,所見即所得

  雙引號:內容中有變量、特殊轉義符等,會先把變量、轉義字符解析出結果,然后再輸出最終內容。

  反引號:用於命令引用,命令的執行。

18、DNS解析過程

  遞歸查詢

  1. 瀏覽器查詢緩存,是否有百度的ip,如果有結束
  2. hosts文件中是否有百度的ip地址,如果有結束
  3. 如果本地DNS有百度的ip地址,如果有,本地DNS將其返回給請求主機,然后結束
  4. 根服務器根據com后綴,將請求轉發給頂級域名服務器
  5. 頂級域名服務器查詢自己的權威DNS服務器
  6. 權威DNS域名服務器查詢到百度的IP,將結果返回給頂級,頂級返回給根,根返回給本地,本地返回給請求主機,結束。

  迭代查詢

  • 瀏覽器查詢緩存,是否有百度的ip,如果有結束
  • hosts文件中是否有百度的ip地址,如果有結束
  • 如果本地DNS有百度的ip地址,如果有,本地DNS將其返回給請求主機,然后結束
    (前三步不變)
  • 根服務器根據com后綴,將頂級服務器IP告訴給本地服務器
  • 本地服務器訪問頂級DNS,頂級DNS將權威DNS返回給本地
  • 本地服務器訪問權威DNS,權威DNS將百度IP返回給本地
  • 本地將百度IP返回給請求主機
19、TCP、UDP協議區別 

  1) TCP提供面向連接的傳輸,通信前要先建立連接(三次握手機制); UDP提供無連接的傳輸,通信前不需要建立連接。
  2) TCP提供可靠的傳輸(有序,無差錯,不丟失,不重復); UDP提供不可靠的傳輸。
  3) TCP面向字節流的傳輸,因此它能將信息分割成組,並在接收端將其重組; UDP是面向數據報的傳輸,沒有分組開銷。
  4) TCP提供擁塞控制和流量控制機制; UDP不提供擁塞控制和流量控制機制。

20、為什么是四次揮手?  

  由於TCP連接是全雙工的,因此每個方向都必須單獨進行關閉。

  TCP的連接的拆除需要發送四個包,因此稱為四次揮手(four-way handshake)。客戶端或服務器均可主動發起揮手動作,在socket編程中,任何一方執行close()操作即可產生揮手操作。
  (1)客戶端A發送一個FIN,用來關閉客戶A到服務器B的數據傳送。
  (2)服務器B收到這個FIN,它發回一個ACK,確認序號為收到的序號加1。和SYN一樣,一個FIN將占用一個序號。
  (3)服務器B關閉與客戶端A的連接,發送一個FIN給客戶端A。
  (4)客戶端A發回ACK報文確認,並將確認序號設置為收到序號加1。
21、time_waite狀態

  等待足夠的時間以確保遠程TCP接收到連接中斷請求的確認;

22、OSI七層及所對應的協議 

  應用層 特定應用對接收數據的處理                       HTTP、FTP、SMTP 
  表示層 設備數據格式與網絡標准數據格式轉換     LPP、GIF、JPEG 
  會話層 通信管理,建立和斷開通信連接                RPC、SSL、TLS 
  傳輸層 管理兩個網絡終端之間的數據傳輸            TCP、UDP 
  網絡層 網絡地址管理和路由選擇                           IP/IPv6、ICMP 
  數據鏈路層 互聯設備之間傳送和識別數據幀         ARP、PARP 
  物理層 比特流與電子信號之間的轉換                    IEEE 802.3/802.2
23、常見的負載均衡策略

  輪詢、加權輪詢、hash算法、隨機random、最小連接數、加權最小連接數

24、http狀態碼  

  1開頭:信息狀態碼

  2開頭:成功狀態碼

  3開頭:重定向狀態碼

  4開頭:客戶端錯誤狀態碼

  5開頭:服務端錯誤狀態碼

25、shell截取日志文件中的IP,並統計,截取出次數最多的

  當前WEB服務器中聯接次數最多的ip地址

  netstat -ntu |awk '{print $5}' |sort | uniq -c| sort -nr

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM