Linux文件管理模块分析

硬盘文件系统

inode与块的存储

硬盘读写时以扇区为单位,文件系统中读写数据最小单位为块,一个块(簇)内部是相邻的几个扇区,在Linux中的ext文件系统,默认大小为4K。

短网址系统设计总结

需求评估

  • 输入数据:一个长网址、过期时间和一个自定义的别名
  • 输出数据:自定义别名或者随机生成的短网址,过期时间之前访问都会被重定向到原始地址。
  • 读多写少

实现原理:将短网址redirect到长网址(301/302跳转)

Kafka学习笔记(四)-集群工作机制

Controller机制

Controller主要作用是在Zookeeper的帮助下管理和协调整个Kafka集群(在zk中存储集群元数据)。Kafka集群中会有一个或多个Broker,其中一个Broker会被选举为Controller,它负责管理整个集群中所有分区和副本的状态,其工作职责包括以下内容:

Kafka学习笔记(三)-通信协议

协议设计

需要进行网络传输的中间件都会拥有自己的一套通信协议,这往往会成为该组件的性能瓶颈,需要考虑的优化点较多。Kafka自定义了基于TCP的二进制通信协议,Kafka2.0中,一共有43种协议类型,每个都有对应的请求和响应,与HTTP协议类似,它同样有RequestHeaderRequestBody。其中RequestHeader结构如下:

0%