面试

Redis 主从复制如何实现?

由于数据都是存储在一台服务器上,如果出事就完犊子了,比如: 如果服务器发生了宕机,由于数据恢复是需要点时间,那么这个期间是无法服务新的请求的; 如果这台服务器的硬盘出现了故障,可能…

如何查看网络的性能指标?

Linux 网络协议栈是根据 TCP/IP 模型来实现的,TCP/IP 模型由应用层、传输层、网络层和网络接口层,共四层组成,每一层都有各自的职责。 应用程序要发送数据包时,通常是…

ping的工作原理是什么?

在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了。 “那你知道 ping 是如何工作的吗?” —— 灵魂拷问 可能有的小伙伴奇怪的问:“我虽然…

CPU工作原理

代码写了那么多,你知道 a = 1 + 2 这条代码是怎么被 CPU 执行的吗? 软件用了那么多,你知道软件的 32 位和 64 位之间的区别吗?再来 32 位的操作系统可以运行在…

什么是缓存雪崩、击穿、穿透?

用户的数据一般都是存储于数据库,数据库的数据是落在磁盘上的,磁盘的读写速度可以说是计算机里最慢的硬件了。 当用户的请求,都访问数据库的话,请求数量一上来,数据库很容易就奔溃的了,所…

TCP三次握手和四次挥手

  任 TCP 虐我千百遍,我仍待 TCP 如初恋。 巨巨巨巨长的提纲,发车!发车! PS:本次文章不涉及 TCP 流量控制、拥塞控制、可靠性传输等方面知识(opens …

输入网址到前端显示的期间都是发生了哪些事情?

想必不少小伙伴面试过程中,会遇到「当键入网址后,到网页显示,其间发生了什么」的面试题。 还别说,这问题真挺常问的,前几天坐在我旁边的主管电话面试应聘者的时候,也问了这个问题。 接下…

如何从日志分析 PV、UV?

很多时候,我们观察程序是否如期运行,或者是否有错误,最直接的方式就是看运行日志,当然要想从日志快速查到我们想要的信息,前提是程序打印的日志要精炼、精准。 但日志涵盖的信息远不止于此…

为什么Mysql采用B+树作为索引?

「为什么 MySQL 采用 B+ 树作为索引?」这句话,是不是在面试时经常出现。 要解释这个问题,其实不单单要从数据结构的角度出发,还要考虑磁盘 I/O 操作次数,因为 MySQL…

TPC/IP模型如何理解

问大家,为什么要有 TCP/IP 网络模型? 对于同一台设备上的进程间通信,有很多种方式,比如有管道、消息队列、共享内存、信号等方式,而对于不同设备上的进程间通信,就需要网络通信,…