首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
猴子请来的田二爷
掘友等级
一句话介绍不完这么温柔善良美丽大方的我。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
27
文章 27
沸点 0
赞
27
返回
|
搜索文章
赞
文章( 27 )
沸点( 0 )
什么是队头阻塞以及如何解决
通常我们提到队头阻塞,指的可能是TCP协议中的队头阻塞,但是HTTP1.1中也有一个类似TCP队头阻塞的问题,下面各自介绍一下。 队头阻塞(head-of-line blocking)发生在一个TCP分节丢失,导致其后续分节不按序到达接收端的时候。该后续分节将被接收端一直保持直…
Unix域协议
如果我们的目的仅是在同一台主机上的不同进程之间进行通信,那么除了TCP/UDP套接字以外我们还可以使用Unix域协议。Unix域协议是IPC(进程间通信)的方式之一,Unix域协议使用套接字API,支持同一台主机的不同进程之间进行通信。直观上来说Unix域协议有点类似使用本地回…
POSIX Thread
在传统的unix模型中,当一个进程需要另一个实体来完成某项任务时,它就fork一个子进程出来处理,比如在一个网络服务器程序中,父进程accept一个连接,然后fork一个子进程,由该子进程处理与连接对端的客户端之间的通信。 fork是昂贵的。fork要把父进程的内存映像复制到子…
linux线程实现
前面提到进程和线程的区别,进程是资源分配的基本单位,线程是程序执行的基本单位。线程都属于某个进程,而同一个进程下的不同线程分别有共享和独享的数据,这里再列举一下: linux是遵循POSIX标准的操作系统,所以linux也需要提供遵循POSIX标准的线程实现。而最初linux系…
netty中的epoll实现
在java中,IO多路复用的功能通过nio中的Selector提供,在不同的操作系统下jdk会通过spi的方式加载不同的实现,比如在macos下是KQueueSelectorProvider,KQueueSelectorProvider底层使用了kqueue来进行IO多路复用;…
Linux磁盘缓存机制
最近遇到了一起跟磁盘相关的线上故障,借此总结一下之前不太了解的Linux磁盘缓存相关的知识。 总的来说磁盘缓存出现的原因大概有两个:第一是访问磁盘的速度远慢于访问内存的速度,通过在内存中缓存磁盘内容可以提高访问速度;第二是根据程序的局部性原理,数据一旦被访问过,就很有可能在短时…
linux perf简单总结
perf是linux系统中提供的性能分析工具,它基于一个叫“Performance counters”的内核子系统实现,同时支持硬件(CPU、PMU(Performance Monitoring Unit))和软件(软件计数器、tracepoint)层面的性能分析。 perf与…
cache一致性里的MESI协议
在有多个核的处理器的处理器中,每个核都有自己的cache,而如何确保多个核的cache内容的一致则是一个很容易遇到的问题,MESI协议就是一个专门用来解决cache一致性的协议。很多处理器使用的都是MESI协议或者MESI协议的变体,而MESI协议其实也是MSI协议的变种。ME…
java内存模型与volatile
在计算机硬件结构中,为了平衡cpu和内存之间由于速度带来的差距,cpu中引入了cache作为处理器与内存之间的缓冲。在多核的处理器中,每个核都有属于自己的cache,这就带来了cache一致性的问题。前面提到的MESI协议就是用于处理cache一致性问题的一个协议,它将cach…
TCP拥塞控制:数据包守恒、慢启动、拥塞避免、快重传
1986年,从LBL到UC Berkeley的网络吞吐因为拥塞出现了从32Kbps到40bps的急剧下降,Van Jacobson 在1988年的论文《Congestion Avoidance and Control》从这个问题出发,提出了数据包守恒定律以及慢启动、拥塞控制和快…
下一页
关注了
26
关注者
0
收藏集
0
关注标签
1
加入于
2019-03-25