面试携程 我都遇到了这些问题
共 1828字,需浏览 4分钟
·
2021-09-01 10:44
专注于PHP、MySQL、Linux和前端开发,感兴趣的感谢点个关注哟!!!文章整理在GitHub,Gitee。主要包含的技术有PHP、Redis、MySQL、JavaScript、HTML&CSS、Linux、Java、Golang、Linux和工具资源等相关理论知识、面试题和实战内容。
概况
这两天请了两天假,出去看了看外面的招聘市场。两天时间差不多面了10家公司,成功拿到7家offer,这里总结一下,个人在面试中遇到的一些问题,不是很全,有一些忘记了。每道题从题目看很简单,在实际中都是一步一步步的深度挖掘,这里就没有总结的很细。这里面的公司有电商、游戏、大数据类型的公司。
PHP相关
平常都使用的什么框架?Laravel和ThinkPHP框架的区别?
Laravel常用到的功能有哪些?Laravel依赖注入实现的原理是怎么样的?
Swoole你用到了哪些功能?对协程这一块了解吗?
能说说PHP的生命周期吗?传统的php-fpm模式和swoole有什么区别?
在项目中都是怎么用hyperf的?了解hyperf中的依赖注入实现原理吗?使用hyperf中的类是怎么实现的,是通过注解引入吗?
说说你在项目中使用到的PHP函数,任意说几个以及它的功能?
PHP的垃圾回收机制是怎么样的?
PHP5的版本和PHP7之间有哪些区别?对PHP8了解吗,任意说说其中的新特性?
说说php-fpm与NGINX工作原理是怎么样的?
说一说PHP中的垃圾回收机制是怎么样的?
cgi与fast_cgi关系是怎么样的?
isset、empty和is_null区别是怎么样的?如果传递一个null,该三个函数分别返回什么?
require_once与include_once,require与include的区别?为什么一个是警告一个是致命错误?
php5与php7的区别是怎样的?
php-fpm的工作模式?进程数量配置依据是什么?
说说PHP数组中的数据结构是怎么样的?
能说说进程、线程和协程的关系吗?
Redis相关
平常使用Redis都是在哪些场景?
Redis的持久化有哪几种?有什么区别?实现的原理是怎样的?
Redis的事务了解吗?事务都有哪些注意的地方?
Redis都有哪些数据类型?你是怎么选择数据类型的?底层的数据结构是怎么样的?
Redis能够实现命令批处理吗?
Redis的哨兵机制了解吗?实现原理是怎么样的?
Redis的主从复制实现原理是怎么样的?如何保证数据一致性?数据延迟又该如何处理?
利用Redis如何实现队列功能?
消息发布与订阅有使用过吗?怎么使用的?中间又遇到过什么问题吗?
如何解决缓存穿透、击穿和雪崩问题?
Redis作为一个内存型数据库,如何更好的解决内存的占用?
Redis与memcached的区别?什么时候会选择memcached?
MySQL
列举几个MySQL索引失效的情况?该如何优化这些情况?
MySQL索引都有哪些?InnoDB索引是用的什么数据结构,为什么使用这种数据结构?
MySQL主从复制是如何实现的?如果从节点挂了,重新启动从节点,如何保持数据一致性?如何解决数据同步延迟问题?
说说你优化SQL语句的几种思路有哪些?
说说MySQL中的锁有哪些?之间的区别?
MySQL中的事务了解吗?说说其4大特性?
事务中隔离性,有几种情况?这几种情况分别会产生什么问题?
MySQL中MVVC实现的原理是怎么样的?
MongoDB与MySQL的关系,为什么日志系统会选择MongoDB?
RabbitMQ
主要使用的场景在哪些地方?
工作模式都有哪些?之间的区别是怎么样的?
如何保证消息的可靠性?
日志存储在RabbitMQ,如果同步到MongoDB里面,如何解决新旧数据问题?(这里提到了一个公司实际业务问题,公司日志会存储到MongoDB,如何保证每次存的都是最新的消息)
你知道哪些消息队列?这些消息队列有什么区别?
软件设计
有一个电商营销活动系统,你该如何去设计这个系统,保证系统不会出现问题?
项目中哪些地方用到了消息队列?是如何设计的?
电商系统中,如何保证商品库存不会超卖问题?
如果一页面请求慢,该从哪些方面排查?