自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 基于mykernel2.0编写一个操作系统内核

1.在ubantu配置实验环境:wget https://raw.github.com/mengning/mykernel/master/mykernel-2.0_for_linux-5.4.34.patch(直接从GitHub拿,使用wget有可能失败)sudo apt install axelaxel -n 20 https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.4.34.tar.xzxz -d linux-5.4.34.

2020-05-12 18:55:49 212

原创 网络梳理

为什么tcp要四次挥手?在三次握手的过程中,SYN和ACK是一起发送的但是在四次挥手的时候FIN和ACK却不是一起发送的而是分开发送的,为什么呢???那是因为啊,TCP连接是全双工的也就是说接收到FIN只是说没有数据再发过来但是还是可以发送数据的,也就是接受到一个FIN只是关闭了一个方向的数据传输,另一个方向还可以继续发送数据。在四次挥手的时候也是这样前两次挥手只是确认关闭了一个方向的数据,加上...

2020-04-14 11:37:30 367

原创 分布式锁

直接基于setnx实现分布式锁setnx高版本已经可以将设置setnx和设置超时时间合并成原子操作了当然如果不想解除别人的锁,那么你可能需要threadLocal保存随机值其实还有一个问题,就是你拿到分布式锁后你来执行,但是执行过程中锁超时了,就会造成一些冲突操作,怎么办?因为你得操作可能很耗费时间,比如是一个大事务操作,这个时候就需要一个后台线程每隔10s来看看是否还拥有锁,如果拥有那么就...

2020-04-11 12:16:25 135

原创 Redis回顾2

为什么需要集群这样的功能?并发量数据量的问题,如果机器内存只有256G,业务需要500G呢?网络流量的需求数据分布-将全量数据进行拆分-拆分成一个个子集(分区)顺序分区和哈希分区对比还是跟你业务需求有关吧,比如你的键值业务相关就用顺序分布法,但是顺序分布有个很严重问题,就是数据倾斜,例如按照用户id进行区分,可能早期用户访问量较高,后期用户访问较低,导致访问不均匀hash分...

2020-04-10 21:10:58 198

原创 Redis基础回顾

数据结构和编码为什么要设计这么多的数据结构呢?比如像string就有类似于raw,int,embstrraw就是我们常说的sds了首先内存的资源是非常昂贵的,假如我们在使用数据结构的时候能够采用空间换时间的话,可以采用一些压缩的结构,又比如字符压缩AAAA我们可以压缩为4A,其实空间换时间你在redis里面真的非常常见,像Slot槽的状态保存通过ClusterNode.slots[]数组+C...

2020-04-09 21:30:59 141

原创 java里比较器的理解

比较器分为内部比较器和外部比较器内部比较器内部比较器通过实现Comparable接口,重新接口里的CompareTo() 方法来进行对象之间的比较//按照商品价格从低到高排序,再按照产品名称从高到底排序 @Override public int compareTo(Object o) { if(o instanceof Goods){ ...

2019-09-30 17:17:45 387

空空如也

空空如也

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

TA关注的人

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