自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 面试时说Redis是单线程的,被喷惨了!

Redis是单线程的,这话搁以前,是横着走的,谁都知道的真理。现在不一样,Redis变了。再说这句话,多少得有质疑的语气来跟你辩驳一番。意志不坚定的,可能就缴械投降,顺着别人走了。到底是什么样的,各位看官请跟小莱一起往下:图注:思维导图Reactor模式反应器模式,你可能不太认识,如果看过上篇文章的话应该会有点印象。涉及到 Redis 线程它是一个绕不过去的话题。1、传统阻塞IO模型在讲反应器模式前,这里有必要提一下传统阻塞IO模型的处理方式。在传统阻塞IO模型中,由一...

2020-11-02 13:57:03 250

原创 硬核!15张图解Redis为什么这么快

作为一名服务端工程师,工作中你肯定和 Redis 打过交道。Redis为什么快,这点想必你也知道,至少为了面试也做过准备。很多人知道Redis快仅仅因为它是基于内存实现的,对于其它原因倒是模棱两可。那么今天就和小莱一起看看:图注:- 思维导图 -基于内存实现这点在一开始就提到过了,这里再简单说说。Redis 是基于内存的数据库,那不可避免的就要与磁盘数据库做对比。对于磁盘数据库来说,是需要将数据读取到内存里的,这个过程会受到磁盘 I/O 的限制。而对于内存数据库来说,本...

2020-10-29 13:57:50 172

原创 缓存与库先写哪个,这十几张图告诉你

日常生产场景中,为了避免大量请求同时打在数据库上导致故障,数据库+缓存的方式已经成了日常标配。对于读取的部分,大家都很熟悉。但是对于写的部分,到底是先写库还是先写缓存,这点可能困扰着很多人。各位看官请跟随小莱往下看:图注:- 思维导图 -旁路缓存策略提到这个有逼格的名词你可能不是很熟悉,但是说到它的使用方式,你肯定用过。这是一种最经典的缓存+数据库读写的模式,英文是这样 Cache Aside Pattern,可能你见过。这种模式对应的使用方式有两种情况,一读一写: 基

2020-10-26 13:34:18 221

原创 活见鬼,明明删除了数据,空间却没减少!

迁移数据常用1、导出文件 -mysqldump 命令‍mysqldump是 Mysql 自带的逻辑备份工具。其备份原理是通过协议连接到 Mysql 数据库,将需要备份的数据查询出来转换成对应的insert语句。当需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。常用命令: 导出所有数据库 mysqldump-uroot-p123456--all-databases>/tmp/all.sql ...

2020-10-24 21:40:08 122

原创 从小公司进入大厂,我都做对了哪些事?

故事得从19年的那个秋天说起,同事小丽给俺发了条消息:“俺对象进城了。”“纳尼?!你对象从乡下来了?”“不是,俺对象去大公司了。”“哦哦,这么个意思啊,你对象真棒!考官都问什么了,我看看......”于是俺也蠢蠢欲动,开启了大厂面试的征程,下面是俺的经验,可以给诸位借鉴借鉴。日常准备锻炼身体骚年,你已不是当年那个强壮的小伙子了,听句劝,尽情挥洒自己的汗水吧(洒对地儿喔)。听说大厂是人间炼狱啊,每天晚上都要加班到很晚,摸摸你的发际线,还想不想讨老婆?给你个偏方,每天锻炼身体,免疫力提.

2020-10-24 20:56:32 354

原创 因为它,差点无缘大厂梦!!!

前言今天,小莱在leetcode上闲逛,突然眼前一亮,咦!这不是去年来百度二面时的一道算法题吗?没想到在这遇到了。想当时险些栽到上边,不过最后千钧一发之际,还是想到了解决方法,顺利拿到offer 。画外音:后来,在小米的面试环节中也遇到了此题。那么,今天小莱就给大家分享下这道动态规划题。题目:一个机器人位于一个 m×n 网格的左上角(起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共..

2020-10-24 16:50:52 82

原创 图解:删除链表倒数第N个节点

前言在上篇中,小莱给大家分享了链表的相关知识及初步进阶。接下来几期里,小莱计划将链表的相关拓展写成一个系列。画外音:关于链表相关知识,请点击回顾今天,我们先来看第一道拓展题。题目:给定一个链表,删除链表倒数第n个节点,并且返回链表的头结点。示例:给定一个链表:1->2->3->4->5,和 n = 2。当删除了倒数第二个节点后,链表变为 1->2->3->5。说明:给定的n保证是有效的。链表长度法相信很多人看到这道题时的第

2020-09-02 23:01:24 4467

原创 图解:如何旋转链表

前言上期,小莱给大家分享了利用双指针定位删除节点及尾节点位置的方法(见《图解:删除链表倒数第N个节点》)。这期,小莱继续给大家分享一道利用双指针处理的链表拓展题。题目:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入:1->2->3->4->5->NULL, k = 2输出:4->5->1->2->3->NULL解释:向右旋转 1 步:5->1->2->

2020-09-02 22:55:42 187

原创 链表环的问题:操场上,如何多次偶遇女神?

前言一个风清月皎的夜晚,小莱独自在操场漫步。突然一个熟悉的身影从旁边经过,小莱定睛一看,这不是心怡很久的女神吗?小莱快走几步追上女神后打了个招呼就径直往前走了(没出息)。为了加深女神对自己的印象,小莱决定再来一次偶遇(回头是不可能回头的)。只见小莱加快了步伐,终于再次偶遇到了自己的女神.....本期主要分为以下几个部分: 判断是否有环 环的长度 环的入口 链表长度 画外音:关于单链表知识,请点击回顾。判断是否有环如图,这是一个链表存在环的示意图。

2020-08-29 20:26:52 112

原创 你以为很熟悉的单链表,这些坑很多人都踩过......

前言某大厂内,小莱写完代码后翘着二郎腿靠在椅子上,正嘴里哼着小曲时。突然听到不远处传来了一声,"单链表都不会,这是基本功.......接着面吧!"。听到这句话,小莱顿时打了一激灵,端直坐了起来。回想小莱的面试经历中也曾遇到过单链表的问题,曾经还在面试某大厂时被单链表反转pass过。单链表作为最基础的数据结构,往往被忽略。大家的潜意识里可能认为越简单的东西大家都会,也就不会被作为考察与筛选条件。但事实却恰恰相反,单链表在面试环节中被问到的频率还是挺高的。且在原来的基础上又出现了很多拓展。比如:

2020-08-29 20:17:00 330

原创 害!面试挂在了Redis集群上......

上篇《干货:送你一份新鲜出炉的面试题》里提到了redis集群的三种模式,私下里就这道题和几位熟悉的朋友也交流过,很多答得不是很全面。大多数人平时对redis的使用很熟悉,但是对于这种偏思想与设计的东西却只是略知一二。那么,今天我们就来聊聊redis集群的三种模式。画外音:事实上,这道题在小莱的面试经历中被问到的频率还是挺高的。主从模式1、架构图2、集群介绍1)主从模式里使用一个redis实例作为主机(master),其余多个实例作为备份机(slave);2)mas..

2020-08-29 19:54:19 356

原创 干货:送你一份一线大厂面试题

​作者 |莱乌最近小莱的一些朋友去大厂面试,小莱与他们沟通了后总结了一份面试题,希望给想进大厂的同学提供一些帮助。面试题包括:百度、滴滴、头条、微博、小米、顺丰等一线大厂。数据结构1、单链表反转(手写代码)2、如何判断一个单链表是否有环?2、给你一个实现栈的类,如何实现一个堆?Redis1、redis数据类型有哪些,及分别对应的底层数据结构2、跳表的实现方式,时间复杂度3、分布式锁的实现,详细参考《面试官:谈谈分布式锁的实现》4、redis持久化方式,...

2020-08-10 19:21:21 325

原创 面试官:谈谈分布式锁的实现

最近小莱去大厂面试,最终挂在了分布式锁上,于是回来后认真整理了这篇文章,以期下次面试遇到同样的问题时一雪前耻......一、什么是分布式锁分布式锁是控制分布式系统之间同步访问共享资源的一种方式。举个通俗易懂的例子:网吧打游戏。小莱去网吧打游戏,路上碰巧遇到了同学小王和小丁,三人同时来到网吧前台表示都想在包厢里上网。但是包厢只有一个,同一时间也只能容纳一人,前台MM很为难。突然,前台MM心生一计,将一枚硬币抛于空中,让他们三人同时争抢,谁能抢到谁去包厢。只见小莱眼疾手快最终将硬币据为己有,看着..

2020-08-08 16:47:34 237

cmder_mini.zip

一款好用的客户端软件,颜值高,体验好。一直在使用。

2018-04-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除