从问题中思考,从解答中成长
问题列表
网络篇
HTTP
TCP
- TCP 适用场景
- TCP 的主要特点
- 简述三报文握手建立 TCP 连接
- [建立 TCP 连接为什么最后还要发送确认](https://github.com/colinlet/PHP-Interview-QA/blob/master/docs/01.%E7%BD%91%E7%BB%9C.md#5-%E5
%BB%BA%E7%AB%8B-tcp-%E8%BF%9E%E6%8E%A5%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9C%80%E5%90%8E%E8%BF%98%E8%A6%81%E5%8F%91%E9%80%81%E7%A1%AE%E8%AE%A4) - 简述 TCP 连接的释放
- TIME-WAIT 是什么,为什么必须等待 2MLS
- TCP 粘包问题
UDP
IPv4&IPv6
Socket
其他
数据机构与算法篇
PHP篇
- echo、print、print_r、var_dump 区别
- 单引号和双引号的区别
- static、self、$this 的区别
- include、require、include_once、require_once 的区别
- public、protected、private、final 区别
- MySQL、MySQLi、PDO 区别
- 发起 HTTP 请求有哪几种方式,它们有何区别
- 常见数组函数
- Cookie 和 Session
- 预定义变量
- 传值和传引用的区别
- 构造函数和析构函数
- 类的静态调用和实例化调用
- php.ini 配置选项
- 502、504 错误产生原因及解决方式
- 主流 PHP 框架特点
- 对象关系映射/ORM
Web篇
JS
- JavaScript 数据类型
- 为什么把 JavaScript 文件放在 Html 底部
- JavaScript 操作 DOM 的方法有哪些
- JavaScript 字符串方法有哪些
- JavaScript 字符串截取方法有哪些?有什么区别
- 如何实现 ajax 请求
- 同源策略是什么
- 如何解决跨域问题
- 引起内存泄漏的操作有哪些
- 如何判断网页中图片加载成功或者失败
- 如何实现懒加载
- JSONP 原理
CSS
- CSS 选择器的分类
- CSS sprite 是什么,有什么优缺点
- display: none 与 visibility: hidden 的区别
- display: block 和 display: inline 的区别
- CSS 文件、style 标签、行内 style 属性优先级
- link 与 @import 的区别
- flex 与 CSS 盒子模型有什么区别
- PNG,GIF,JPG 的区别及如何选
Vue
MySQL篇
- 体系结构
- 基础操作
- 数据库设计范式
- 数据库设计原则
- char 和 varchar 数据类型区别
- LEFT JOIN 、RIGHT JOIN、INNER JOIN
- UNION、UNION ALL
- 常用 MySQL 函数
- 锁
- 事务
- 常见存储引擎
- 常见索引
- 聚族索引与非聚族索引的区别
- BTree 与 BTree-/BTree+ 索引原理
- 分表数量级
- EXPLAIN 输出格式
Redis篇
- Redis 特点
- Redis 支持哪些数据结构
- Redis 与 Memcache 区别
- 持久化策略
- Redis 事务
- 如何实现分布式锁
- Redis 过期策略及内存淘汰机制
- 为什么 Redis 是单线程的