学习NIO能更加接近架构级的技术体系,对未来的职业发展有非常好的促进作用。

当你看到以上这段文字的时候,笔者要恭喜你,因为你正在往Java高性能、高并发、高吞吐量技术的道路上迈进,也就代表着未来是有可能将自己的职业规划定位在Java高级程序员、Java资深工程师,以及技术经理、技术总监或首席技术官(CTO)这类职位上。这些职位对Java技术的掌握是有一定要求和标准的,至少笔者认为要将自己对技术的关注点从SSM分离出去,落脚在多线程、并发处理、NIO及Socket技术上,因为这些技术是开发Java高性能服务器必须要掌握的,甚至有些第三方的优秀框架也在使用这些技术。先不说自已开发框架,即使想要读懂第三方框架的源代码,也要掌握上面提到的多线程、并发处理、NIO及Socket这4种核心技术。

这份PDF细化到特性级别,涵盖缓冲区、通道、选择器以及基于Socket的TCP/IP和UDP编程。

第1章缓冲区的使用
第1章介绍NIO技术中的缓冲区,包括Buffer. ByteBuffer. CharBuffer 类的核心API的使用。





第2章通道和FileChannel类的使用
第2章介绍NIO技术中的Channel (通道)类的继承关系、核心接口的作用,并重点介绍FileChannel类的使用,以增加读者对NIO操作File 类的熟悉度。





第3章获取网络设备信息
第3章介绍如何使用Networklnterface类获得网络接口的信息,包括IP地址、子网掩码等,还会介绍InetAddress和InterfacAddress类的常见API。如果进行Java开发,且基于Socket技术,那么这章可以给你需要的信息。




需要免费领取这份IO+Socket网络底层通信技术核心手册PDF的朋友点击文章开头链接获取
第4章实现Socket通信
第4章介绍如何使用Java语言实现Socket通信。Socket通信是基于TCP/IP和UDP实现的。另外,将介绍ServerSocket、Socket、 DatagramSocket 和DatagramPacket类的全部API。只有熟练掌握Socket技术后,在阅读相关网络框架的源代码时才不会迷茫。也就是说,如果读者想要进行Java高性能后台处理,那么必须要学习Socket,并且它是进行细化学习的基础。




第5章选择器的使用
第5章介绍NIO技术中最重要的Selector(选择器)技术。NI0技术的核心一多路复用就是在此章体现的。学习这章内容需要有Socket的编程基础,这就是为什么在前面用两章篇幅来介绍Java的Socket编程的原因。同步非阻塞可以大幅度提升程序运行的效率,就在此章体会一下吧。






第6章AIO的使用
第6章介绍AIO。AIO是异步I0, NIO是非阻塞I0。AIO 在NIO的基础上实现了异步执行、回调处理等高级功能,可以在不同的场景使用AIO或NIO,可以说NIO和AIO是Java高级程序员、架构师等必须要掌握的技术。




需要免费领取这份IO+Socket网络底层通信技术核心手册PDF的朋友点击文章开头链接获取