超硬核!騰訊運維崗面試必問11題,我說的,不信就來看看
不要怕大公司面試,找到核心的高頻問題,就解決了80%的面試題
大家好,我是互聯網老辛,CSDN博客專家,一線互聯網從業人員,架構師,互聯網連續創業者,從16年開始做直播教學,幾年來,陸續幫助近3000+小伙伴高薪就業。歡迎各位小伙伴加我咨詢相關問題,帶你走出迷茫;
座右銘: 我不認為自己是最優秀的,但我可以是最努力的
正文:
請你談談進程和線程的區別?
1)進程
進程是程序的一次執行過程,是一個動態概念,是程序在執行過程中分配和管理資源的基本單位,每一個進程都有一個自己的地址空間,至少有 5 種基本狀態,它們是:初始態,執行態,等待狀態,就緒狀態,終止狀態。
2)線程
線程是CPU調度和分派的基本單位,它可與同屬一個進程的其他的線程共享進程所擁有的全部資源。
3)聯系
線程是進程的一部分,一個線程只能屬于一個進程,而一個進程可以有多個線程,但至少有一個線程。
4)區別:
根本區別:進程是操作系統資源分配的基本單位,而線程是任務調度和執行的基本單位
舉個簡單的例子: 進程比如成火車,線程就是車廂
線程在進程下工作(單純的車廂無法工作)
一個進程可以包含多個線程(一列火車可以包含多個車廂)
不同進程間數據很難共享(一輛火車上的乘客很難換到另一輛火車上)
進程使用的內存地址可以上鎖,一個線程使用某些共享內存時候其他的線程必須等他結束,才能使用這塊內存, (火車上的洗手間,互斥鎖)
談談HTTP?
概念:
HTTP 是一個協議,是一個超文本傳輸協議。它基于TCP/IP來傳輸文本,圖片,視頻,音頻等。
但是HTTP不提供數據包傳輸功能,也就是數據包從瀏覽器到服務端來回的傳輸與http沒關系。因為這是tcp/ip干的
所以我們重點強調了交互,HTTP規定了一種交互的格式,大家可以用這個格式來交互,減少交互成本。
HTTP的本質就是客戶端和服務器端約定好的一種通信格式
HTTP是通信協議,而RPC是遠程調用。公司內部用RPC,第三方接口都用HTTP協議。
文件想要修改權限,用什么命令,文件權限755代表什么意思
chmod 命令修改權限 7 root用戶 可讀可寫可執行 5 用戶組 可讀可執行 5 普通用戶 可讀可執行``` chmod 755 a.sh
查看cpu,內存的情況
[root@itlaoxin-163 ~]# cat /proc/cpuinfo [root@itlaoxin-163 ~]# lscpu 內存 free -m df -k top cat /proc/meminfo
Tomcat的日志在什么地方
catalina.log
MySQL的左右鏈接?
SQL提供了多種類型的連接方式,它們之間的區別在于:從相互交疊的不同數據集合中選擇用于連接的行時所采用的方法不同 內連接: 只連接匹配的行 左外連接: 包含左邊表的全部行(不管右邊的表中是否存在與它們匹配的行) 以及右邊表中全部匹配的行,a.order_id = b.order_id(+) 右外連接: 包含右邊表的全部行(不管左邊的表中是否存在與它們匹配的行) 以及左邊表中全部匹配的行,a.order_id(+) = b.order_id 全外連接: 包含左、右兩個表的全部行,不管另外一邊的表中是否存在與它們匹配的行
云環境監控獲取到一臺支撐物理機CPU利用率超標持續告警,如何排查?
從系統層面,業務層面,訪問調用層面,數據層面進行展開,逐一排查
軟連接和硬鏈接的區別
軟連接可以理解為快捷方式,硬鏈接理解為復制
語法:
軟鏈接:ln -s 源文件 目標文件
硬鏈接:ln 源文件 目標文件
區別如下:
硬鏈接: 與普通文件沒什么不同,inode 都指向同一個文件在硬盤中的區塊
軟鏈接: 保存了其代表的文件的絕對路徑,是另外一種文件,在硬盤上有獨立的區塊,訪問時替換自身路徑。
Kubernetes有哪些核心組件這些組件負責什么工作?
etcd:提供數據庫服務保存了整個集群的狀態 kube-apiserver:提供了資源操作的唯一入口,并提供認證、授權、訪問控制、API注冊和發現等機制 kube-controller-manager:負責維護集群的狀態,比如故障檢測、自動擴展、滾動更新等 cloud-controller-manager:是與底層云計算服務商交互的控制器 kub-scheduler:負責資源的調度,按照預定的調度策略將Pod調度到相應的機器上 kubelet:負責維護容器的生命周期,同時也負責Volume和網絡的管理 kube-proxy:負責為Service提供內部的服務發現和負載均衡,并維護網絡規則 container-runtime:是負責管理運行容器的軟件,比如docker
描述一下Pod的生命周期有哪些狀態?
status 屬性里面有一個phase字段記錄了Pod的狀態 正常情況下起一個新Pod的過程 Pending表示Pod已經被同意創建,正在等待kube-scheduler選擇合適的節點創建,一般是在準備鏡像 Running表示Pod中所有容器已經被創建,并且至少有一個容器正在運行或者是正在啟動或者正在重啟 Succeeded表示所有容器已經成功終止,且不會再啟動 Failed表示Pod中所有容器都是非0狀態退出 Unknown表示無法讀取Pod狀態通常是kube-controller-manager無法與Pod通信
怎么看Pod中的容器是否健康?
status 屬性里面有一個conditions字段記錄了容器狀態 其中 type: Ready=True 表示Pod已經準備就緒,切已經加入了Service的負載均衡當中 type: ContainersReady=True表示所有Pod中所有容器都通過了健康檢查(如有),并全部準備就緒
編寫腳本實現以下功能;
每天早上5點開始做備份
要備份的是/var/mylog里所有文件和目錄可以壓縮進行備份
備份可以保存到別一臺器上192、168、1、2 FTP帳號 aaa 密碼 bbb
要示每天的備份文件要帶有當天的日期標記
#cat /root/mylogbak.sh #!/bin/bash bakdir=mylog date=date +%F cd /var tar zcf ${bakdir}_${date}.tar.gz ${bakdir} sleep 1 ftp -n <<- EOF open 192.168.142.129 #遠程ftp服務器IP user aaa bbb put mylog_*.tar.gz bye EOF rm -rf mylog_*.tar.gz
添加crontab:
crontab -l
00 05 * * * /bin/bash /root/mylogbak.sh #每天早上5點開始執行備份腳本
總結:
騰訊運維崗的面試偏基礎,基礎一定要牢固。
HTTP Kubernetes 容器 運維
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。