面试
文章平均质量分 77
mr.杰瑞
只要开始就不算晚……
展开
-
总结一下我复习过的算法和mysql
mysql 架构:连接器->查询缓存->分析器->优化器->执行器B+树数据全部存放在叶子节点,B+树中查询任意数据的次数,都是n次,n表示的是B+树的高度php7 不用下载包 ,拓展库就有,直接new 就能实现9种数据结构这些会随着进程销毁而销毁最大堆://堆 分为最大堆和最小堆 //队列和栈都是线性结构 底层是 指针//队列先进先出 (排队取票)$q = new SplStack();//栈 先进后出 (便签)$q[]=1;$q[]=2;$q[]=3原创 2021-04-22 01:51:49 · 163 阅读 · 1 评论 -
初学rabbitMQ及Kafka
左client 客户端 生产者broker 中转站右client 客户端 消费者exchange 交换机(快递员) 和 queue 队列(邮箱) 直接进行绑定如果有个订单业务,用户下完单后就要发短信,传统的实现方式都是给mysql,mysql插入数据,之后发短信,再取数据发送,但这里就比较耗时,也耗数据库的性能。怎么优化呢?做拆分,异步任务往mysql插入数据成功后,向rabbitMQ 插入数据,如果发短信的话,rabbitMQ去发短信就好了RabbitMQ的使用场景? (很多设计思.原创 2021-04-17 02:51:36 · 172 阅读 · 0 评论 -
php底层了解一下子 及 linux命令
PHP 的核心数据结构是什么?HashTablehashTable为什么Linux要分为用户空间和内核空间?1.安全 内核有些接口给用户空间用运行php有个 调度的过程,用户空间-》调用内核空间,内核空间返回用户空间,会有两种状态切换谈谈你队5种常用IO模型的理解?1阻塞IO,2.非阻塞IO3.多路复用IO4.信号驱动IO5.异步IO一次网络请求的完整过程?(重点)1.用户输入url 浏览器缓存 (f12 network size (disk ..原创 2021-04-16 00:25:58 · 493 阅读 · 2 评论 -
Redis面试 不问这些来找我
Redis如何实现延时队列?有序集合,使用时间戳作为score,消息内容作为key,调用zadd来生产消息,消费者使用zrangbyscore获取n秒之前的数据做轮询处理Redis缓存击穿是啥?怎么解决?缓存击穿是指缓存中没有数据,但数据库中有数据,一般是缓存时间到期,如果并发用户特别多,同时读缓存没读到数据,有同事去数据库中去数据,引起数据库压力瞬间增大,造成过大压力。(一条热点数据)如果是不同数据都过期,很多数据都查不到,那就是缓存雪崩了。(ps: 我经常把缓存击穿和穿透搞混,后来我想了想.原创 2021-04-14 01:30:51 · 124 阅读 · 0 评论 -
二分法 两种写法你会的是哪个?
最近刷leecode总结了一个规律,只要是有序数组,我都会用到二分法,为啥呢? 数据库其实也是二分查找。左闭有开$arr = array(1,3,5,8);// $target = 9;function searchInsert1($nums, $target){ $n = count($nums); $left = 0; $right = $n; // 定义target在左闭右开的区间里,[left, right)数组中的数据一定在$nums[0,4) target原创 2021-04-13 15:42:54 · 121 阅读 · 1 评论 -
mysql 面试题 一定会问
订单,库存两个表怎么保证数据一致性?mysql用事务,存储引擎InnoDB,事务规定只有订单完成,并且相应的库存减少才允许提交事务,否则事务回滚,确保数据一致性外键的作用保持数据一致性,完整性,主要目的是控制存储在外键表中的数据。如果设置了外键,删主表数据时,不能删https://my.oschina.net/u/4479011/blog/4494777什么事读锁,什么是写锁?读锁又叫共享锁,可以读但不能修改写锁又叫排它锁,它自己可读可修改,其他事务不能读也不能修改数据库中,什么是锁?.原创 2021-04-12 23:17:58 · 94 阅读 · 0 评论 -
php 面试题基础 呕心沥血总结
考察面向对象这样写,对象是引用不是赋值 指向同一个地方$b=new a();$c=$b;$b->abc='D';echo $c->abc;DList item原创 2021-04-11 01:14:10 · 118 阅读 · 0 评论 -
PHP 生命周期和垃圾回收你了解多少?
PHP生命周期PHP的运作模式有几种?WEB模式(nginx发送请求到html页面,页面请求到sapi接口做代码执行。)+CLI模式(命令行)sapi是啥?php里面会有sapi (所有数据接收的通道)sapi包含 php-fpm(web) cli(命令行) cgimain() 【不同sapi的main】php_module_startup()【请求初始化阶段】 php框架zend引擎 fpm 把work和master启动起来,master进程是常驻的,加载各个扩展代码到maste原创 2021-04-01 01:22:19 · 127 阅读 · 0 评论 -
Redis面试问题总结
1. Redis是单线程还是多线程?Redis 5以前是单线程,这里说的单线程不是Redis就一个线程,只不过是它的worker线程是单线程。主要要从工作机制的角度回答它的优缺点。比如:单线程图多线程图2. Redis缓存技术机制是什么?Redis插数据的时候,会同步一份保存在磁盘上,有两种保存方式AOF(AOF文件)当往Redis里面插数据时,会以日志的方式append追加到AOF文件中,所以AOF里面会有很多原始记录的操作语句,当恢复时会重新执行一遍,所以说存在对一个key重复操作原创 2021-03-29 22:55:19 · 109 阅读 · 0 评论