带你了解Netty的设计之美

来源:互联网 发布:115会员 淘宝 编辑:程序博客网 时间:2024/06/06 10:21

说到网络,不得不说Netty。那么很多人会问Netty在什么时候使用,Netty有什么好的设计之处。人人都传Netty的好,那么到底是怎么的好了,今天就带你去好好了解Netty!

Netty是高性能的异步非阻塞NIO框架!

下面先来理解一下两组关键的概念。

同步和异步

拿方法调用来说,同步是指调用一个方法能够在方法结束时立即得到方法的结果,异步就是方法调用时没有返回结果,由另外的线程去做方法中的事情,当前线程可以去做其他的事情。异步调用的结果会通过中间状态改变或者回调函数等来通知。

拿一个生活的例子来说,同步就好比你去小区附近的一个4S点修车,老板在帮你修车,你一直在旁边等老板修好位置,可能是等1个小时,也有可能是等2天;而异步就好比你去修车,老板说修好了给你打电话来取车,你会可以回家等了,老板通过电话的形式来通知到你。

阻塞和非阻塞

用一个队列来说,当你需要从队列中获取一个元素,如果当前队列为空,那么线程会一直在当前方法处于等待,线程会挂起。非阻塞则不会挂起!


原创粉丝点击