[TOC] 前言 java io操作中通常采用BufferedReader,BufferedInputStream等带缓冲的IO类处理大文件,不过java nio中引入了一种...
[TOC] 前言 java io操作中通常采用BufferedReader,BufferedInputStream等带缓冲的IO类处理大文件,不过java nio中引入了一种...
[TOC] FileChanel原理 官方对Channel的解释 (一个用于输入/输出操作的连接。通道表示对实体的开放连接,如硬件设备、文件、网络套接字或能够执行一个或多个不...
前两节,我们学了文件系统和磁盘的 I/O 原理,我先带你复习一下。 文件系统,是对存储设备上的文件进行组织管理的一种机制。为了支持各类不同的文件系统,Linux 在各种文件系...
[TOC] CPU 性能指标 我们先来回顾下,描述 CPU 的性能指标都有哪些。你可以自己先找张纸,凭着记忆写一写;或者打开前面的文章,自己总结一下。 首先,最容易想到的应该...
IDEA 有个很牛逼的功能,那就是后缀补全(不是自动补全),很多人竟然不知道这个操作,还在手动敲代码。 这个功能可以使用代码补全来模板式地补全语句,如遍历循环语句(for、f...
MySQL作为老牌的应用场景广泛的关系型开源数据库,其底层架构是很值得我们学习的,吸收其设计精华,那么我们在平时的方案设计工作中也可以借鉴,如果项目中用的是MySQL,那么就...
数据从InnoDB的内存到真正写到存储设备的介质上到底有哪些缓冲在起作用。 我们通过下图看一下相关的缓冲: 从上图中,我们可以看到,数据InnoDB到磁盘需要经过 InnoD...
[TOC]我们都知道事务有4种特性:原子性、一致性、隔离性和持久性,在事务中的操作,要么全部执行,要么全部不做,这就是事务的目的。事务的隔离性由锁机制实现,原子性、一致性和持...
事务回滚的需求 我们说过事务需要保证原子性,也就是事务中的操作要么全部完成,要么什么也不做。但是偏偏有时候事务执行到一半会出现一些情况,比如: 情况一:事务执行过程中可能遇到...
我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,对于 MySQL 的学习也是这样。平时我们使用数据库,看到的通常都是一...
[TOC]今天与同学争执一个话题:由于socket的accept函数在有客户端连接的时候产生了新的socket用于服务该客户端,那么,这个新的socket到底有没有占用一个新...
说到带宽,这真是一个非常幽默非常滑稽的名词。一般来说,我们经常会看到这样的解释:带宽就是高速公路,带宽越宽,说明这条线路的通行能力越强,速度也会越快。其实,这么理解并不能算错...
RPC的实现原理 假设你有一个计算器接口,Calculator,以及它的实现类CalculatorImpl,那么在系统还是单体应用时,你要调用Calculator的add方法...
join 线程的合并的含义就是 将几个并行线程的线程合并为一个单线程执行,应用场景是 当一个线程必须等待另一个线程执行完毕才能执行时,Thread类提供了join方法来完成这...
[TOC] I/O的源起 所谓“I/O”,就是“Input/Output”(输入/输出)的意思。从广义上讲,任何输入输出都可以叫做I/O。 例如,声卡可以输入输出声音,键盘控...