学会和人工智能相处
|
我们来解读一下BIO的过程:
“关键钥匙”分析: BIO的特点就是在IO执行的 两个阶段 都被 阻塞 了。 所以,我们日常使用BIO模型的时候,提高性能的方式,就是采用 多线程。 在一般的场景中,多线程模型下的BIO是成本较低、收益较高的方式。但是,如果在高并发的场景下,过多的创建线程,会严重占据系统资源,降低系统对外界响应效率。 那是不是可以考虑使用“线程池”或者“连接池”呢? 一定程度上可以。“池化”的目的在于减少创建和销毁线程的频率,让空闲的线程重新承担新的执行任务,维持一个合理的线程数量,可以很好的降低系统开销。 但是,“池化”技术只能一定程度上缓解了频繁调用IO接口带来的资源占用。如果“池”上限100,而我们需要1000的IO,那并不能解决性能问题,这是由于BIO模型本身的限制决定的。 所以,需要非阻塞I/O来尝试解决这个问题。 2.2 同步非阻塞I/O, NIO BIO的阻塞问题,让我们考虑使用非阻塞的NIO模型。 典型应用:
socket的非阻塞模式 资源记录部分的字段含义如下
资源记录部分只有在 DNS 响应包中才会出现。下面我们就来通过响应报文看一下具体的字段示例 (编辑:怀化站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

