PHP
- php 魔术方法 、魔术常量
- php cli
- autoload , spl_autoload
- composer (如 Laravel 中 ClassLoader.php) , PRS 规范
- php SPL标准库, 包括 数据结构、迭代器、接口、异常、函数、文件处理等
- 闭包、函数式编程思想
- php modules PHP-FPM FastCGI ...
PHP 框架 :
- Laravel
- Yii
- Symfony
- Socket WebSocket ? swoole框架
MySQL
- mysql 日期查询, 比如查询今天、昨天、7天、近30天、本月、上月数据 , 怎
么做到 ?reference : https://my.oschina.net/kakoi/blog/667791 - mysql 事物、事物隔离级别,reference: 高性能MySQL -> chapter 1.3 • mysql索引实现原理 , reference: http://www.uml.org.cn/sjjm/201107145.asp#nav-2-1y • ORM 原理 : 对象属性与数据库字段映射 参考 Eloquent ORM
- mysql 引擎 ?常用InnoDB MyISAM , 说说一些区别
- InnoDB 表锁、 行级锁(share mode / exclusive)
reference: http://www.cnblogs.com/zhaoyl/p/4121010.html http://www.myexcept
ion.cn/mysql/1712377.html - MySQL性能调优 1.Linux IO,没有了解太多 2.配置层面 3.SQL语句调优 4.mysql
临时表 create temporary table tmp_table..... (临时表只在连接期间存在) 临
时表可以放在内存中,指定 type=heap - MySQL慢查询怎么监控?MySQL缓存、将select语句和查询结果放在缓冲区
以后对于同样的sql语句、将直接从缓冲区读取结果、节约查询时间 设 置参数 :query_cache_size,MySQL 慢查询超过10秒 、慢查询日志、需要 手动开启、平时不建议开启,影响性能。或者开两个会话端口、一个跑sql、 另一个show processlist - 联合索引
- 聚簇索引
- FullTextSearch全文搜索
- MySQL主从同步原理?主从数据库同步失败的原因常见有哪些?
Redis
- redis 队列 (计数 实时通信 邮件队列) 持久化
- redis value 类型? strings hashes list set 等、各类型应用场景 ?
- redis用来做什么的:处理高并发,缓存处理,队列消息发送很方便
- redis劣势: 1.redis是基于内存的,每次重启都需要重新读入数据。2.key-value, 并
不是关系型数据库
算法
- 排序
冒泡排序:依次比较相邻,交换位置 。最好最坏情况下的时间复杂度 ? 选择排序:依次找到剩余最小的,判断和当前位置是否一样, 不然交换 QuickSort - 二分查找
- 二叉树相关。遍历、二叉查找树
- 基础数据结构以及时间复杂度怎么计算 List Heap
哈希表查询元素的时间复杂度 o(1) 无序集合,有序集合,哈希表查询元素的问题是算法当中基础的基础
前端相关
- multipart/form-data 与 application/x-www-form-urlencode ? form 的默认
enctype 类型是 application/x-www-form-urlencode。而上传文件时, 使
用 multipart/form-data ,文件会以二进制数据提交给服务器,不对字符进行编 码 - Javascript 闭包函数、this 、传参 等问题
Web 缓存相关
- 客户端缓存
- Web代理
- 静态资源CDN
- redis
- 数据库缓存 负载均衡相关
- DNS
- nginx
- 数据库负载均衡
API接口
- API接口安全性、参数验证 ?
- App token 机制 ? Auth2 ?
- 接口规范 , 输入、输出设计规范 ? 错误状态码
PHP设计模式
*常用: 门面、工厂、单例、 发布/订阅
Linux
*管道命令
*进程监控如ps(process status)工具 ,CPU监控、 top 、 iostat工具 文件权限 rwx, owner group other
HTTPS
- https验证过程
- SSL TLS 协议
- 对称 、 非对称 加密解密? RSA ?
高并发应对
- 缓存
- 异步操作 消息队列 Laravel Queue Redis项目中的使用 : 缓存服务、 session服
务 、 消息队列(邮件短信 积分发放、佣金发放、简单消息直接用闭包函
数 —daemon 常驻队列) • 服务器负载均衡,堆机器 - 分库分表 读写分离
两个方向考虑 :
1 . 尽可能减少并发请求量、通过缓存和异步请求
2 . 尽可能增大服务处理能力、服务器和数据库的负载能力