- NIO與Socket編程技術指南
- 高洪巖
- 458字
- 2019-01-05 05:42:03
1.1 NIO概述
常規的I/O(如InputStream和OutputStream)存在很大的缺點,就是它們是阻塞的,而NIO解決的就是常規I/O執行效率低的問題。即采用非阻塞高性能運行的方式來避免出現以前“笨拙”的同步I/O帶來的低效率問題。NIO在大文件操作上相比常規I/O更加優秀,對常規I/O使用的byte[]或char[]進行封裝,采用ByteBuffer類來操作數據,再結合針對File或Socket技術的Channel,采用同步非阻塞技術實現高性能處理。現在主流的高性能服務處理框架Netty正是通過封裝了NIO技術來實現的,許多第三方的框架都以Netty框架作為底層再進行封裝。可以這樣認為,想要成為一個合格的Java服務器程序員,NIO技術是必須要掌握的技能。本書也將NIO技術中核心類的API幾乎進行了全部覆蓋,以讓讀者全面地掌握NIO和Socket技術。
本章將介紹NIO技術中的核心要點:緩沖區(Buffer)。緩沖區在NIO的使用中占據了很高的地位,因為數據就是存放到緩沖區中,并對數據進行處理的。例如,進行CURD操作時,都是對緩沖區進行處理,也就是數據處理的正確與否與操作緩沖區的正確與否關系緊密。每種緩沖區都有自己獨有的API,這些API提供的功能已經足夠在大多數的場景下進行軟件設計了。那么,我們就開始詳細介紹吧!
推薦閱讀
- SQL Server 從入門到項目實踐(超值版)
- Getting Started with Gulp(Second Edition)
- Objective-C Memory Management Essentials
- Flutter開發實戰詳解
- 數據庫程序員面試筆試真題與解析
- C程序設計簡明教程(第二版)
- Cross-platform Desktop Application Development:Electron,Node,NW.js,and React
- Ext JS Data-driven Application Design
- Wireshark Network Security
- JS全書:JavaScript Web前端開發指南
- Bootstrap 4:Responsive Web Design
- Learning Hunk
- C#應用程序設計教程
- Android項目實戰:手機安全衛士開發案例解析
- Learning YARN