PHP 高级面试115题汇总(含答案)
104、myisam 和 innodb 的区别,为什么 myisam 比 innodb 快,myisam 和 innodb 的索引数据结构是什么样的?innodb 主键索引和非主键索引的区别?其索引上存放的数据是什么样的? 105、断开 TCP 连接时,timewait 状态会出现在发起分手的一端还是被分手的一端 为什么断开 TCP 连接需要进行四次握手 ? TIME_WAIT 状态的意义 在 TCP 连接中,当被动关闭连接的一方 (图中 client) 发送的 FIN 报文到达时,被动关闭连接的一方会发送 ACK 确认报文,并且进入 TIME_WAIT 状态,并且等待 2MSL 时间段 (MSL:maximum segment life)。这么做有下述两个原因: 被动关闭连接的一方 (图中的 server) 在一段时间内没有收到对方的 ACK 确认数据包,会重新发送 FIN 数据包,因而主动关闭连接的一方需要停留在等待状态以处理对方重新发送的 FIN 数据包。否则他会回应一个 RST 数据包给被动关闭连接的一方,使得对方莫名其妙。 在 TIME_WAIT 状态下,不允许应用程序在当前 ip 和端口上和之前通信的 client (这个 client 的 ip 和端口号不变) 建立一个新的连接。这样就能避免新的连接收到之前的 ip 和端口一致的连接残存在网络中的数据包。这也是 TIME_WAIT 状态的等待时间被设置为 2MSL 的原因,以确保网络上当前连接两个方向上尚未接收的 TCP 报文已经全部消失。 106、AWK 各种数据分析考得非常多,要多练习,题目不再一一写了 107、redis 中集合、有序集合、hyperLog、hash 的数据结构是啥样的 108、描述一下:一个请求到达 nginx 的全部处理过程(nginx 自身会调用哪些逻辑)、然后怎么与 php 通信,中间的流程是什么样的等等? 109、nginx 和 php-fpm 的相关配置,随便问里面各种参数啥意思 110、假如有一张地图,如下图,"-" 代表海洋、"+" 代表陆地,用你最擅长的方式,取出陆地的坐标。
111、Jsonp 的实现原理,你还知道哪些跨域方式? 112、如果某个博客通过判断 referer 方式来进行图片防盗链,如何破解? 113、简述 mysql 查询优化的本质,并举 2 个例子 115、单例模式的优点是什么?抽象类是什么?还了解哪些设计模式? 它们必须拥有一个构造函数,并且必须被标记为 private (编辑:通辽站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |