记录下最近遇到的盲点面试题。这些公司都不是太大,所以我们只挑出一些相对技术性的问题来记录。PHP基础相关:PHP编译过程?你知道操作码吗?从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*fromtablewherec=1anda=2其中a和c可以分别索引?MySQL高并发下的一道笔试题为什么只用MySQL用递归。explain的extra字段一般出现什么信息?如果在explain中看到sql去掉了索引,但是执行还是很慢,请问是什么原因呢?usingfilesort,mmr,usingindexcondition,usingindex,usingwhereindex仍然很慢,原因如下:执行当前SQL语句时,MySQL只是清理脏页,二级索引上没有字段可以查询树。回表(需要注意的是,当MySQL优化器需要回表并且回表扫描的行数过大时,会停止使用索引,直接使用主键索引。此时time,extra字段不会有索引)使用联合索引解决数据表数据量大,需要物理优化mysql中排他锁的加锁时机,比如分库和分表?可以手动加排他锁吗?myisam引擎和innodb存储数据有什么区别?myisam存储有什么优势?MySQL主从延迟怎么解决?Redis和NoSQL的区别Redis和MongoDBRedis缓存雪崩、击穿、穿透的概念和解决方法Redissentinel之间如何通信?Redis连接数耗尽怎么办?一致性哈希和哈希槽有什么区别?延迟队列(这个是通过一个解决方案来问的,问题是如何延迟发送短信或邮件)如何保证用户对一个接口的请求一秒内只能请求一次?Redis网络会话共享中操作系统线程和协程使用锁的区别
