面試題小結
#脈脈
一面
- 冒泡算法
- 數據庫 左鏈接,on條件,跟where條件的結果比對
- 寫sql,對索引認知
- 用登陸過程說下緩存機制,
- 內存溢出的原因
- 進程跟線程的區別
- 看代碼報錯,定位問題
二面
- 闡述下項目用到的技術:
比如redis,kafka,docker,bizflow
- 並發任務多嗎(不是並發項目),查看個人工作效率
- 額,寫個nodejs文件查詢查看功能
- http跟https區別
- selenium了解多少
- 測試中常用工具
- 項目中印象較深的bug
- 測試流程
- 項目推進,場景演示
#美團
#作業幫
1. 代碼能力
代碼實現文件上傳
代碼實現讀文件中某域名平均響應時間
代碼實現兩個有序列表的中間位置查詢
2. linux命令
讀日誌文件中10萬行記錄,查詢某字符串 重復出現次數最多的前三
3. sql
清空表數據的命令
in是不是走索引
表結構設計
4. 描述類
印象比較深的項目,Bug
#貝殼
- http請求全過程
- 冒泡算法
- Post發送的明文密碼安全嗎?http跟https的關系
- 數據庫索引的作用
- like是否走索引
- 代碼實現:傳參數的裝飾器
- 代碼實現:2個已經排序的列表,合並成一個列表並排序
- 描述一下最近一個線上故障,並說一下原因,從中你學到了什麽?
- get和Post請求的區別
1)get參數通過url傳遞,post放在request body中
- get和Post請求的區別
#知乎
- 數據庫索引的作用
- like是否走索引
- 代碼實現:傳參數的裝飾器
- 代碼實現:2個已經排序的列表,合並成一個列表並排序
- 描述一下最近一個線上故障,並說一下原因,從中你學到了什麽?
#易企秀
- get和Post請求的區別
1)get參數通過url傳遞,post放在request body中
2)get請求在url中傳遞的參數是有長度限制的,而post沒有。
3)get比post更不安全,因為參數直接暴露在url中,所以不能用來傳遞敏感信息。
get請求只能進行url編碼,而post支持多種編碼方式
get請求會瀏覽器主動cache,而post支持多種編碼方式。
get請求參數會被完整保留在瀏覽歷史記錄裏,而post中的參數不會被保留。
GET和POST本質上就是TCP鏈接,並無差別。但是由於HTTP的規定和瀏覽器/服務器的限制,導致他們在應用過程中體現出一些不同。
GET產生一個TCP數據包;POST產生兩個TCP數據包。
- session和cookies的區別
a) cookie數據存放在客戶的瀏覽器上,session數據放在服務器上。
b) cookie不是很安全,別人可以分析存放在本地的cookie並進行cookie欺騙,考慮到安全應當使用session。
c) session會在一定時間內保存在服務器上。當訪問增多,會比較占用你服務器的性能,考慮到減輕服務器性能方面,應當使用cookie。
d) 單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie。
e) 可以考慮將登陸信息等重要信息存放為session,其他信息如果需要保留,可以放在cookie中。怎麽在post請求中加如cookies
- 代碼實現;打印字典的鍵和值
stu_info={
‘name‘:"cll",
‘age‘:18,
‘tel‘:15910626960,
}
j=1
for i in stu_info:
print(j,i,stu_info[i])
j+=1
- linux命:令查詢某個端口是什麽進程占用? 拷貝文件從一臺機器拷貝到另一臺機器?
文件改名字,比如a.txt 改成b.txt
從一臺機器拷貝文件到另一臺機器:scp 源文件 用戶名@IP: 目的文件
文件改名字:mv a.txt b.txt
查詢8080端口是否被占用:netstat -anp|grep 8080 - 如果項目中,發現不能在上線前完成測試,可能要延期,怎麽跟產品溝通.
#瓜子網
- 數據庫索引原理,2)聯調查詢SQL
- 常用linux命令:
1)vi刪除一行:dd,
在最後一行追加Go或者GA ,當前行追加A,
跳到首行gg,最後一行G
替換字符串:
單個替換: r
長串替換:%s/pattern/string/g 替換所有行的pattern為string
2)怎麽查看內存占用信息,該命令顯示那些信息? 根據占用內存排序顯示
top:顯示進程號,用戶,占用的cpu,內存,
3)查看tomocat服務進程號,
ps -ef |grep tomcat | awk‘{print $2}
4) 關閉所有resin進程
ps -ef | grep resin | awk‘{print $2}‘ | sudo xargs kill -9
5) 查看端口號被那個進程占用
netstat -ntlp | grep 8080
- 代碼實現,冒泡排序
- 思路,四則運算表達式實現思路
- 遞歸
- 四則運算表達式,設計測試用例
- 裝飾器,叠代器
- python中的數據結構
面試題小結