NIO的引入 多路非阻塞高速网络IO通道 同步和异步 这个概念其是对于程序运行结果的获得方式而言: 同步:在没有获得结果之前或通过轮询的方式不断地询问结果是否产生,在得到结果之前不会返回 异步:调用者在发出调用之后,直接返回没有结果,等待被调用者产生结果之后通过状态通知调用者已完成,在通过回调函数返 ...
分类:
其他好文 时间:
2020-04-04 14:48:55
阅读次数:
70
作为一名程序员,io知识是必不可少,其实一直在和io打交道,要么显示要么隐含给了操作系统,故做下关于io的记录。说io之前呢,先介绍什么叫同步异步丶阻塞非阻塞 1. 同步异步丶阻塞非阻塞 1.1 同步是指发出一个请求,在没有得到结果之前该请求就不返回结果,请求返回时,也就得到结果了。比如我经常用烧水 ...
分类:
编程语言 时间:
2020-04-04 09:54:12
阅读次数:
75
node - 非阻塞的异步 IO 每当我们提起 node.js 时总会脱口而出 事件驱动、非阻塞I/O 和 单线程,所以我总结了以下几点对这三项概念的阐述,不一定正确仅仅代表个人观点。 单线程 当一个应用程序运行时会产生一个主进程,它与其他并行执行的应用程序一起竟争计算机系统资源,是管理和分配现有所 ...
分类:
其他好文 时间:
2020-04-03 15:14:03
阅读次数:
74
Netty有什么特点 高并发 :Netty是一款基于NIO(Nonblocking I/O,非阻塞IO)开发的网络通信框架,对比于BIO(Blocking I/O,阻塞IO),他的并发性能得到了很大提高 。 传输快 :Netty的传输快其实也是依赖了NIO的一个特性——零拷贝。 封装好: Netty ...
分类:
Web程序 时间:
2020-04-01 09:12:32
阅读次数:
112
由于JavaScript脚本的加载会阻塞页面上其他元素的载入,以异步非阻塞的方式加载脚本文件对网页性能而言就显得尤为重要,甚至可以说很关键。Facebook JavaScript SDK配置示例如下: <script>(function(d,s,id){ var js,fjs = d.getElem ...
分类:
其他好文 时间:
2020-03-31 12:02:02
阅读次数:
65
介绍nginx进程模型,详述master与worker进程工作原理,讲述为什么nginx选择使用异步非阻塞方式等原理内容
分类:
系统相关 时间:
2020-03-30 09:45:57
阅读次数:
85
同步 异步 指两个线程间的关系 两个线程之间要么是同步的,要么是异步的 同步操作时,调用者需要等待被调用者返回结果,才会进行下一步操作 异步操作时,调用者不需要等待被调用者返回调用,即可进行下一步操作 被调用者通常依靠事件、回调等机制来通知调用者结果 阻塞 非阻塞 是对同一个线程来说的 在某个时刻, ...
分类:
其他好文 时间:
2020-03-29 12:34:14
阅读次数:
49
打开Nodejs英文网:https://nodejs.org/en/ 中文网:http://nodejs.cn/ 我们会发现这样一句话: 翻译成中文如下: Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O ...
分类:
Web程序 时间:
2020-03-28 23:18:03
阅读次数:
78
Redis是基于单线程模型实现的,也就是Redis是使用一个线程来处理所有的客户端请求的,尽管Redis使用了非阻塞式IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是O(1)),但由于Redis是单线程执行的特点,因此它对性能的要求更加苛刻,本文我们将通过一些优化手段,让Redis更加高效的运行。本文我们将使用以下手段,来提升Redis的运行速度:缩短键值对的存储长度;使用lazyfr
分类:
其他好文 时间:
2020-03-27 23:15:28
阅读次数:
73
Redis是基于单线程模型实现的,也就是Redis是使用一个线程来处理所有的客户端请求的,尽管Redis使用了非阻塞式IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是O(1)),但由于Redis是单线程执行的特点,因此它对性能的要求更加苛刻,本文我们将通过一些优化手段,让Redis更加高效的运行。本文我们将使用以下手段,来提升Redis的运行速度:缩短键值对的存储长度;使用lazyfr
分类:
其他好文 时间:
2020-03-27 23:10:48
阅读次数:
77