写点什么

第八周学习总结

用户头像
饭桶
关注
发布于: 2020 年 11 月 15 日

文件与硬盘I/O

文件以块为单位进行存储,每块4K 。

Linux inode文件控制块

12(块)+256(一级索引)+256256(二级索引)+256256*256(三级索引)

一个文件最大70G内容.

提高文件的读写速度,使用阵列

每块硬盘使用寿命一年.

Raid 0 数据分块备份。

Raid 1数据备份在多块硬盘。

Raid 10 数据分块+多块硬盘备份.

Raid 5,最后一块磁盘存储校验位(异或算法),任何一块磁盘坏了,通过校验形象校验出来数据。将校验位,螺旋式的分摊到各个盘里。缺点,如果两块硬盘坏了,就无法工作了。

Raid 6,记录两个校验信息



时间复杂度

并不是计算程序具体运行的时间,而是算法执行语句的次数。

队列可以解决最短路径。出队列前,记录一下前一个节点就行。



平衡二叉树,左右紫薯深度只差的绝对值不超过1.通过左右旋转保证平衡。



红黑树最多只需要3次旋转就能重新达红黑平衡,时间复杂度为o(1)



递归算法之快排时间复杂度:n*log(n)



贪心算法是局部最优解

很多动态规划可以展开成一个二维表格来分析。最优解的比较。可以达到全局最优。



并不是每次请求都需要域名解析,大概每半小时搞一次域名解析。



链路层是mac地址

网络层是ip地址。

Tcp三次握手建立连接,四次挥手关闭连接。

非阻塞的网络编程

阻塞:为每个socket链接,建立一个线程来处理。可以利用线程池来提高线程利用率。

非阻塞:线程不会被网络的超时而被阻塞掉。有限的线程处理更多的链接。事件监听。

select需要遍历所有socket

Epoll socket将事件放到eventpoll里面,所以只需要遍历eventpoll就可以了。效率要高很多。

多路复用,多个channel可以共用一个selector。



用户头像

饭桶

关注

还未添加个人签名 2020.07.27 加入

还未添加个人简介

评论

发布
暂无评论
第八周学习总结