9月9號,去了一家朋友的公司參加面試,然后就被直接吊打了,問的許多問題居然是我壓根沒有關心過的,看起來只在高層搞框架不行啊,還是得自己造個輪子試試,下面回顧一下問到的問題和我自己找到的一些答案。
- file_get_contents與curl
- 前者不會緩存DNS,后者可以緩存DNS,這樣多次訪問同一個網站的時候,后者的速度會更快
- 前者請求http時不會keepalive,后者會,這樣多次請求同一個鏈接時后者的速度會更快
- 前者會受php.ini文件中配置的影響,關閉之后無法使用,后者不會
- 前者只有get請求,后者可以模擬post,ftp,tcp等請求
- 前者得到的結果存儲在一個字符串中,后者會存儲到數組中,這樣更方便分析使用
- API接口的身份驗證問題
- 使用JWT實現驗證,但是對面試官提到的劫持路由就無能為力了,劫持者拿到了用戶的token,那我只能認為他就是用戶本人了
- mysql連接池的問題
- PHP沒有連接池可以說是被JAVA程序員噴了很久的問題了,查了資料發現現在一般分為兩類,一類是認為PHP連接Mysql的效率夠高,速度夠快,所以沒有必要做出連接池,作為一個JAVA黑我真的想這么認同。還有一類是用swoole自己實現一個連接池。最后我也不知道應該怎么做了,暫時做的一些開發還沒有遇到性能卡在數據庫連接上面的,等以后遇到了再想辦法吧。
- redis數據類型(這完全是面試官誤導我的一個問題)
- String
- Hash鍵值對
- List列表
- Set無序集合
- SortSet有序集合
暫時就回想到了這些問題,看起來下次去面試的時候得帶個紙和筆,把這些問題都記下來,突然有點期盼去北京的日子了,每個周末都出去面試幾家公司,估計技術會成長很快。
