記錄一下最近碰到的比較盲點的面試題,公司都不算大,所以只挑出一些技術性比較強的問題做記錄,
PHP 基礎相關:
-
PHP 編譯的程序?對 opcode 有沒有了解?從 opcode 的角度出發,能否優化一下 php 的速度?
-
PHP 變數底層是如何實作的?
-
Nginx 與 php-fpm 的通信程序?Nginx 監聽埠和 socket 方式,有何區別? php-fpm 是怎么呼叫 PHP 代碼的?
-
PHP 是如何連接 MySQL 的?連接池是如何實作的?
-
談下 PHP 和 Golang 的區別
-
Swoole 和 Go 中的協程有何區別?
-
Go 中 goruntine 的底層實作?go 中的協程是怎么通信的?
函式相關
array_key_exists () 和 in_array () 哪個性能較好?
編碼相關:
-
說一下你寫的專案中的代碼架構?(mvc、transformer、中間件等)
-
laravel 中常用設計模式(除了依賴注入和控制反轉,還問到了策略模式和裝飾者模式)
-
composer 自動加載機制(psr-4)
資料庫(MySQL)
老生常談的有:常見的優化手段、為什么使用 B+ 樹存盤、索引型別、隔離級別等,
-
現在有聯合索引 a,b,c, 使用
select * from table where c=1 and a=2其中 a 和 c 分別都可以走索引嗎?為什么 -
只使用 MySQL 在高并發下的問題
-
MySQL 中使用遞回
一道筆試題,感覺比較偏,當做補充知識了解即可
- MySQL 執行慢怎么處理?explain 中 extra 欄位中一般都會出現什么資訊?如果在 explain 中看到 sql 已經走了索引,但是執行還是慢,會是什么原因?
using filesort、mmr、using index condition、using index、using where
走了索引還是慢的原因大概有以下幾種:
當前 SQL 陳述句執行時 MySQL 正好在刷臟頁
二級索引樹上沒有要查詢的欄位,需要回表(需要注意的是,MySQL 的優化器在需要回表,且回表掃描行數過大的時候,會停止使用索引,直接走主鍵索引,這時 extra 欄位中不會出現走索引)可以用聯合索引解決
資料表資料量過大,需要分庫分表等物理優化
-
MySQL 中排它鎖的加鎖時機?能否手動加排它鎖?
-
myisam 引擎和 innodb 存盤資料方式有何不同?myisam 這種存盤方式又有何優點?
-
MySQL 主從出現延遲要如何解決?
Redis 和 NoSQL
-
Redis 和 MongoDB 的區別
-
Redis 快取雪崩、擊穿、穿透的概念和解決方法
-
Redis 哨兵之間如何通信?
-
Redis 的連接數用完了怎么辦?
-
一致性哈希和哈希槽的區別?
-
延時佇列(這個是通過一個解決方案來問的,問題是延時發送短信或郵件如何實作)
-
如何保證一個介面一個用戶請求在一秒內只能請求一次?
用到了 redis 中的鎖
作業系統
- 執行緒和協程的區別
網路
- session 共享
點關注,不迷路
好了各位,以上就是這篇文章的全部內容了,能看到這里的人呀,都是人才,之前說過,PHP方面的技術點很多,也是因為太多了,實在是寫不過來,寫過來了大家也不會看的太多,所以我這里把它整理成了PDF和檔案,如果有需要的可以
點擊進入暗號: PHP+「平臺」


更多學習內容可以訪問【對標大廠】精品PHP架構師教程目錄大全,只要你能看完保證薪資上升一個臺階(持續更新)
以上內容希望幫助到大家,很多PHPer在進階的時候總會遇到一些問題和瓶頸,業務代碼寫多了沒有方向感,不知道該從那里入手去提升,對此我整理了一些資料,包括但不限于:分布式架構、高可擴展、高性能、高并發、服務器性能調優、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql優化、shell腳本、Docker、微服務、Nginx等多個知識點高級進階干貨需要的可以免費分享給大家,需要的可以加入我的 PHP技術交流群
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/82322.html
標籤:其他
下一篇:世界難題
