PHP笔试题面试题

1.你的技术栈有哪些
php、mysql、redis、Rabbitmq、Java、python.....

2.说说lnmp怎么配合服务的

3.nginx和Apache有什么区别

相比于nginx,apache有些臃肿,内存和CPU开销较大,性能上有损耗,nginx对于静态文件的响应能力远高apache。nginx使用资源更少,支持更多并发连接,效率更高,作为反向代理负载均衡服务器。(什么是反向代理?什么是正向代理?https://blog.csdn.net/sinat_38804294/article/details/94393621)nginx即可对内进行支持,也可对外进行服务。其还是一款非常优秀的邮件代理服务器,安装简单,配置简介。

https://blog.csdn.net/qq_41816540/article/details/81024849

4.lnmp接收一个请求有多少进程在工作

应该是4~5个,nginx的master主进程(转发给worker)、worker进程(提交到php-fpm)、php-fpm的master进程(转给worker)、php-fpm的worker进程(真正解析处理执行php)、数据库连接(可有可无)

https://blog.csdn.net/weixin_34199405/article/details/91751942

https://blog.csdn.net/sinat_38804294/article/details/94393621

5.为什么Nginx能承载更大的并发

见3

6.进程间通信有哪些方式

见7

7.管道是怎样的

https://www.jianshu.com/p/8e4f9978e5b8

8.进程、线程和协程

进程是系统资源分配的最小单位;

线程是系统能够进行运算调用的最小单位;

协程是基于线程的用户态调度,避免内核级别的上下文切换造成性能损失

9.php原生支持协程吗

支持,https://cloud.tencent.com/developer/article/1050153

10.swoole大致的框架是怎样的

11.io有哪些模型

异步阻塞和异步非阻塞有什么区别

io多路复用

https://cloud.tencent.com/developer/article/1584406

12.php弱语言类型怎么做到的

https://www.cnblogs.com/shixiuxian/p/8884926.html

13.php有指针吗

没有,但是&引用能达到指针的作用

14.php怎么实现多态

和Java一样,子类继承父类,子类重写父类的方法,父类指向子类,PHP弱语言类型,更加不需要声明类型

15.Rabbitmq消息分发类型

direct(默认)直接绑定,topic通过模式匹配分发队列,fanout发布/订阅

https://blog.csdn.net/panweiwei1994/article/details/79275485

16.redis有哪些数据类型

string、hash、list、set、zset

17.zset和set的区别

set,无序集合、元素为string类型、元素具有唯一性,不重复

zset,有序集合、元素为string类型、元素具有唯一性,不重复、每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序、元素的score可以相同

18.zset排序怎么实现的

通过跳表实现排序,通过字典实现快速查询

https://www.jianshu.com/p/35bce2ea5743 (zset底层实现)

https://blog.csdn.net/yanshuanche3765/article/details/82121043 (跳表排序的实现)

 

19、顺序查找、二分查找(时间计算)、冒泡查找

20、web安全问题有哪些

21、sql语句查找发帖最多的前十

22、常用的框架

23、常见索引、b+树是什么树

24、变量的声明和定义有什么区别

25、数组和链表的区别
26、队列和栈的区别
27、几大排序算法以及利弊
28、用c写一个死循环
29、设计模式以及应用场景

30、什么是多态

31、PHP的垃圾回收机制
32、查看系统负载的命令
33、存储引擎的理解,myisam和innodb(底层理解)
34、冒泡排序
35、PHP双向队列
36、500-505的出现,原因以及解决

37、高并发开发心得

38、二叉树
39、双向队列
40、top命令的一些常见参数
41、个人优缺点
42、觉得最有收获的项目

43、登陆流程的cookie安全问题、密码加密问题

44、数据库索引问题
45、如何定位一个慢sql语句问题
46、用户量急增,如何优化系统:cdn、缓存、分库分表、读写分离、合并请求、根据检测ip访问量

47、求2个有序数组的交集, 第一个数组长度 n, 第二个数组长度 m 1 3 5 7 9 1 3 4 5 6 答案是 1 3 5

48、有个框大小为 m, 有n个石头,每个石头体积为v, 求框最多能装到多大。 eg: 框大小 9 4个石头大小分别为 4 4 2 7 , 则框最大能装 8

49、分析服务器502的过程

50、dns解析过程

51、php zend_内存池
52、php7性能大幅增加的原因
53、php如何限制内存使用
54、cli模式如何传参
55、empty函数
56、in_array的时间复杂度
57、mysql能否使用上多个索引
58、mysql like和order by的优化

posted @ 2020-02-27 16:08  cfYu  阅读(206)  评论(0编辑  收藏  举报