![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络
文章平均质量分 54
吃橘子的汤圆
热爱学习的海绵宝宝,努力吸水中......
展开
-
BIO NIO 多路复用
用户发起不会在阻塞到 accept 和 read 函数调用上,会返回一个空的链接或者空数据用来记录没有数据到达请求,只有在read读数据期间会阻塞.用户到来一个链接会加入到一个 容器(比如数组),遍历容器里面的链接是否有数据可读,相比BIO不会在阻塞,也不会new 大量的线程。把NIO中用户遍历的数组放到了内核层这样遍历数据就不需要用户层和内核层频繁地进行切换.select 解决了 BIO上面所说的第二点。从发起到结束都是阻塞的,比如到accept 和 read读都是阻塞的。原创 2023-10-30 17:51:44 · 48 阅读 · 0 评论 -
HTTP缓存?如何避免发送HTTP?Etag是什么?
缓存(Cache)是计算机领域里的一个重要概念,是优化系统性能的利器。 由于链路漫长,网络时延不可控,浏览器使用 HTTP 获取资源的成本较高。所以,非常有必要把“来之不易”的数据缓存起来,下次再请求的时候尽可能地复用。这样,就可以避免多次请求 - 应答的通信成本,节约网络带宽,也可以加快响应速度。 所谓的避免发送缓存指的是发送请求获得的数据是重复性的,得到的数据都是一致的。浏览器就会把这个请求缓存到本地,下次可以直接读取本地数据,不用重复发送HTTP请求,这样就会避免发送请求 具体流程: 发送请求时浏.原创 2021-08-17 18:38:37 · 195 阅读 · 0 评论