请教一下:理解网络 IO 有什么用?
source link: https://www.v2ex.com/t/875756
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
面试有被问到网络 IO 的问题,这玩意儿到底有啥用处?(理解它的必要性、使用场景等)
网上的博客都在说细节,就把它当作八股文的一部分,我想知道一些实际的用途
kenneth104 8 小时 46 分钟前 网络 IO ,这话题感觉很大?
是特指 sockets 套接字么? |
fengchen0vr 8 小时 46 分钟前 2 硬件方面,中断之类的会占用 cpu
软件方面,发包延时,队列 |
uiosun 8 小时 43 分钟前 @kenneth104 面试官就问我网络 IO ,没有特指……所以我也不知道到底是 socket 、eproll 或者啥了
|
documentzhangx66 8 小时 37 分钟前 既然面试官没特指,那你就给他上一课,从网络被发明时讲起嘛,然后讲到各种网络协议、现代网络结构、各种网络硬件与软件,等等。
|
kenneth104 8 小时 37 分钟前 是挺笼统的问题,尝试在你认知内回答就好。。感觉不用硬顶着回答
|
wellsc 8 小时 35 分钟前 有点反智了
|
ryd994 8 小时 22 分钟前 via Android 如果你不知道有啥用,那就没啥用。计算机是一门实践技术,要用什么学什么。
|
bigbyto 8 小时 3 分钟前 via iPhone 3 IO 是很多东西的基础,不理解的话也很难理解其他框架,容易人云亦云。
比如 tomcat 是如何操作 web request 的,你不理解 io 模型,就不理解为什么要那样设计。 还有 kafka 为什么性能那么高?就是因为 zero-copy 和顺序 io 以及充分利用了 page cache 等等。 这是个基础,别因为是八股文就排斥。之前写过一篇 io 的,自认为还可以,有兴趣可以参考一下。 https://wiyi.org/linux-io-model.html |
bigbyto 7 小时 59 分钟前 via iPhone 再举个例子,tomcat 和 netty 一个是阻塞 io ,一个非阻塞(多路复用),让你去调整它们的线程池,不懂 io 的话,你就不知道怎么调,只能瞎蒙。
|
myd 7 小时 42 分钟前 线上系统偶尔会出现网络问题,不了解原理的话很难定位问题
|
darkengine 7 小时 16 分钟前 1 前端:大部分 UI 卡顿跟网络 IO 有关
后端:服务的并发、请求调度跟网络有关,随着分布式的发展,连存储都跟网络 IO 有关。 你说理解网络 IO 有啥用 |
Helsing 7 小时 10 分钟前 via iPhone 简单点说,网络 IO 设计的不好会影响网络吞吐量,进而影响访问速度,下游或用户就会发现服务访问慢,直接感受就是体验不好,最后就有可能导致用户流失。用户流失那钱就没了。
|
fkdtz 6 小时 31 分钟前 现如今的业务场景几乎没有只需要单机处理就能满足的,而且摩尔定律早已失效,提升单机性能已达极限,所以基本上都是分布式系统了。
网络 IO 之于分布式系统,就像文件 IO 之于单机系统。 利用 IO 的特点,发挥最佳性能,如果不理解 IO ,就没办法实现。 |
janus77 6 小时 23 分钟前 八股文确实是没用啊,不过是大部分基层工作没用,随着你技术的深入就会发现用处了。我也不知道他现在有什么用,但并不妨碍我继续学他
|
fox0001 4 小时 27 分钟前 via Android 1 )不知道你面试的什么工作和职位,很难判断。
2 )“网络 IO”这几个字很模糊,或者说范围大。或者问问面试官想要问什么? |
Jooooooooo 1 小时 47 分钟前 redis 为什么是单线程的?
|
akira 1 小时 11 分钟前 对 CRUD boy 确实没啥用。 一个公司里面 有那么 2 个人会就行了。
大部分公司没人会也没啥事。。。 |
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK