前言
我想,很多人和我一样在煎熬中度过着2021年,也经历了不少困难,随着国家对疫情的控制,互联网行业又重新迎来了生机。
我在2021年拿到了阿里Java研发岗的offer,也算是正式提桶进大厂的打工人了。于是乎,我想把我的经历分享给大家,希望你们在金三银四这个跳槽旺季找到一份更满意的工作!
面试结束后我大概总结了一下,发现还是准备不够充分,基本上全靠自己平时的积累才侥幸通过。因此,我建议大家平时一定要养成学习的习惯,哪怕只花30min,日积月累总会有收获;其次,提前两个月的时间做好充分的准备,最好不要临时抱佛脚。
Redis简介
- Redis与Memcached区别
- Redis优点
- Redis缺点
Redis数据类型
- String
- Hash
- List
- Set
- Sorted set
Redis事务
- MULTI&EXEC(原子执行,并非互斥)
- WATCH&UNWATCH(原子执行+乐观锁)
Redis分布式锁
- 排他锁 SETNX
- 带有超时特性的锁
Redis持久化机制
- RDB(Redis Database,全量模式)
- AOF(Append Only File,增量模式)
- 触发方式
- 相互比较
- RDB最佳策略
- AOF最佳策略
- Redis消息队列
Redis高级数据结构
- BitMap(String的一些其他命令)
- 过期策略
- 内存淘汰策略
- 主从复制(数据是同步的,类似于MySQL Replication)
- 哨兵 sentinel(数据是同步的)
- 集群(数据是分片的,sharing)
- Hash映射(并非一致性哈希,而是哈希槽)
- 数据分片
- 节点间通信协议——Gossip
- 主从选举——Raft
- 功能限制
- 数据迁移/在线扩容
- Codis
- twemproxy
配置文件+应用场景+Lua脚本+与DB保持一致
Redis源码
- 线程模型——单线程
- RedisObject
这份文档从构建一个键值数据库的关键架构入手,不仅带你建立起全局观,还帮你迅速抓住核心主线。除此之外,还会具体讲解数据结构、线程模型、网络框架、持久化、主从同步和切片集群等,帮你搞懂底层原理。相信这对于所有层次的Redis使用者都是一份非常完美的教程了。
总结
本文从基础到高级再到实战,由浅入深,把MySQL讲的清清楚楚,明明白白,这应该是我目前为止看到过最好的有关MySQL的学习笔记了,我相信如果你把这份笔记认真看完后,无论是工作中碰到的问题还是被面试官问到的问题都能迎刃而解!
MySQL50道高频面试题整理:
![](https://upload-images.jianshu.io/upload_images/22932333-972e597128527b2
点击领取2024完整开源项目《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》
b?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
码讲义》](https://bbs.csdn.net/topics/618154847)
b?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)