面试遇到的问题

20190620
1.单例模式 https://segmentfault.com/a/1190000004358963
2.MySQL数据库优化有那些
3.having 排序查询问题
4.redis、memcached的区别【1.存储类型不一样(部分存储在硬盘) 2.数据类型不一样 3.运行环境不一样 4.底层不一样】
4.TP5中的MySQL 连接
6.工厂模式 单例模式都有介绍 https://segmentfault.com/a/1190000004358963

7.array_walk和array_map的区别 【一个返回布尔值 一个返回数据】
8.MyISAM和InnoDB的区别:
1).MyISAM是非事务安全型的,而InnoDB是事务安全型的(支持事务处理等高级处理);
2).MyISAM是表级锁,而InnoDB是行级锁;
a.https://www.jb51.net/article/28287.htm
3).select ,update ,insert ,delete 操作:
MyISAM:如果执行大量的SELECT,MyISAM是更好的选择
InnoDB:如果你的数据执行大量的INSERT或UPDATE,出于性能方面的考虑,应该使用InnoDB表
4).查询表的行数不同:
MyISAM:select count() from table,MyISAM只要简单的读出保存好的行数,注意的是,当count()语句
包含 where条件时,两种表的操作是一样的
InnoDB : InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫
描一遍整个表来计算有多少行
5).外键支持:mysiam表不支持外键,而InnoDB支持
9.索引有那些
10.array_merge()和+ 的区别
array_merge():
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。(数字键名会被重新分配,总会变成从零开始的。。)

对于使用“+”合并数组:
如果数组中有相同的字符串键名(不管是不是数字),则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉。

10.服务器502和504的区别
11.负载均衡是怎么样的
12.session保存的方式有多少种 保存在那里
13.mysiam innodb区别 应用场景 锁表和行表的区别什么情况下使用
14.opcache的了解
15.服务器慢的问题怎么处理 慢日志 服务器查看内存、cpu的命令
16.API网关 http://www.php100.com/9/87448.html
17.分布式事务https://blog.csdn.net/Coder_Joker/article/details/82502233?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
18.mysql加锁https://database.51cto.com/art/201910/604421.htm
19.mycat数据库中间件https://www.jianshu.com/p/3932551e0221
20.NGINX高可用keepalived搭配https://juejin.im/post/5d9066e06fb9a04e2c014e3d#heading-1
21.tp5 rpc http://www.likekeep.me/post/49e70a17.html
22.https://blog.csdn.net/yanluandai1985/article/details/83656374?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

你可能感兴趣的:(面试遇到的问题)