999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java在高并發網絡編程中的應用

2017-01-27 11:12:12魯兆碩
科學中國人 2017年9期
關鍵詞:程序

魯兆碩

南陽農業職業學院

Java在高并發網絡編程中的應用

魯兆碩

南陽農業職業學院

簡單介紹目前多種編程語言,詳細探討Java NIO原理與應用,對Mina與Netty框架的原理與特性詳細進行描述。

Java;網絡編程;NIO技術;Mina;Netty

當前約有100余種常見編程語言,使用較多的有30多種,而Java在諸多編程語言中,很多時候排在首位。不同編程語言各有特點與優勢,每種編程語言在產生的背景環境中,都可發揮出最佳效果。如C語言在系統級編程及底層程序編寫中應用廣泛;而C語言的延伸版C++則在較高程序的編寫中提高了編寫效率;PHP編程語言在Web應用的快速開發中應用效果顯著。本文研究的Java編程語言則在網絡編程中效果較好?,F階段,互聯網的訪問壓力較大,如微博、搜索引擎、社交網絡等,采用Java對高并發網絡程序進行編寫,效率與速度均比較理想。

1、基于Java的高并發編程架構的不同應用

當前,Java的不同版本功能也有所不同,如在1.4版本中,具有哦NIO相關的API,極大的提升了Java的網絡編程能力?,F階段不聯網中高并發應用主要包含兩類:單數據源與多數據源,Java在這兩種高并發模式下可選擇不同的處理模式。

單數據源情況下,添加到request等待隊列,只要隊列長度不為零,則request按排列順序依次處理,等待隊列中的request通過連續池循環完成。在request取出后,在連接池內選擇空閑鏈接,發送request請求,并做好數據接收的準備,數據接收完成后,利用response將數據返回給用戶,鏈接重新進入連接池。如果連接池沒沒有空閑鏈接,則對連接池的容量進行檢查,看是否到達上限,如果沒有,則建立新鏈接,并將鏈接添加到連接池進行使用;反之,等待并輪詢,在有空閑鏈接的時候再對request進行處理。對每個request進行處理時,注意超時鏈接,如果存在,則重置鏈接,防止等待隊伍出現阻塞情況。

多數據源情況下,需要對NIO技術進行應用,比單數據源要復雜。如果仍采用單數據源處理方法,假如從n個數據源內,request需要獲得數據,采用串行處理方式,每個數據源花費時間為t,那么處理一個request就需要花費n×t的時間,花費的時間長是一方面,對處理性能也會產生極大影響。而Java1.4版本中,增加了NIO技術,對多數據源的并發請求可高效處理,NIO中配置Socket,在一個request處理中,可并發向多數據源同時發出請求,不需要逐一等待返還數據,在一個線程內即可完成。這種處理模式下,程序始終處于忙碌狀態,但不會由于某個數據源連接阻塞,導致整體性能受到影響。

2、Java網絡編程框架

2.1 Mina框架

基于Java NIO出現Mina網絡編程應用框架,Mina框架的應用,開發出的網絡應用程序擴展性好、高并發,且開發速度快捷、方便?,F階段,Mina的版本也比較多,Mina2.3中提供了Client封裝與Server封裝,Mina框架不管是在服務器端還是客戶端應用程序的開發中,都非常方便。Mina將網絡應用程序地層的數據傳輸與應用程序分開,開發人員不需要花大量時間處理底層邏輯,只需要專心對應用程序的業務邏輯進行研究即可。Mina也是在NIO技術基礎上實現的,屬于非阻塞通信的網絡編程框架,其不同之處子對對阻塞方式的請求也支持。Mina最主要的特點是業務應用邏輯與底層網絡通信邏輯分離,程序耦合性降低,這是很多應用框架所不具備的,并且是發展的一個方向。IoServer、IoHandler、IoSes?sion、IoFuture及IoFiter是Mina框架的核心,在整個框架中,這些因素具有重要作用。

2.2 Netty框架

Netty與Mina框架相同,都是基于NIO技術實現的Netty為異步網絡通訊框架,對服務器段與客戶端進行封裝。Channel、Buffer及Event是Netty框架的三個基本組成部分,在這三部分基礎上建立Netty所有的上層特性。Netty框架的組建中,對多種協議的特點進行了吸收,包含FTP、SMTP、HTTP等,通過設計,使Netty在網絡編程應用中效果非常理想。

2.3 Mina框架與Netty框架對比

兩種編程框架都表現的非常優秀,對兩種編程框架的學習,可使網絡編程效率明顯提高。Mina框架和Netty框架不僅僅是簡單的對Java NIO進行封裝,更重要的是為開發者提供了使用的平臺。兩種編程框架在實踐中都得到了驗證,能夠有效節約開發實踐,程序的擴展性與穩定性均比較理想。

Mina框架與Netty框架學習也比較簡單,但要將兩種編程框架強大的功能和豐富的特性完全發揮出來,是非常難的,一方面要對Java基礎牢固進行掌握,并對Java NIO機制深入理解,另一方面還要對框架本身進行深入研究,對源代碼認真分析閱讀,才能對整個框架真正的理解和有效的利用。雖然Mina框架與Netty框架比較類似,但各自均有自身獨特的特點,Mina在數據傳輸與接收性能方面較強大,擁有Filter機制,封裝數據程度高,在以數據傳輸為主要業務的服務器中應用效果較好,如FTP、文件共享等服務器中。而Netty框架在訪問性能上優于Mina框架,在高并發互聯網中Net?ty更適合飲用,如新媒體、社交網絡中的應用。因此,選擇何種編程框架,要與具體應用結合進行選擇。

3、結語

當前,互聯網的發展速度非常快,各種新應用不斷涌現,對于編程人員而言,要求不斷推出新產品。在這種情況下,對于IT從業人員來說,選擇成熟的模塊與框架,可以提高應用開發的速度。而Java的特性正好符合這一需求,其用于多種成熟的框架,而對于編程人員來說,需要對Java的性能廣泛了解,對其包含的不同框架,能夠合理進行選擇。

[1]王鳳玲.利用Java編程實現網絡功能[J].電子技術,2012,08(14):15-16.

[2]錢娟.JAVA網絡編程的探討[J].煤炭技術,2012,11(20):258-260.

[3]李政.試論Java編程的現狀及其發展前景[J].電子制作,2013, 19(06):81.

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 国产精彩视频在线观看| 狠狠色狠狠综合久久| 人妻无码中文字幕一区二区三区| 毛片视频网| 五月天婷婷网亚洲综合在线| 亚洲AV永久无码精品古装片| 日韩中文无码av超清| 2022精品国偷自产免费观看| 国产一级一级毛片永久| 午夜性爽视频男人的天堂| 无码人妻免费| 国产国拍精品视频免费看| 99国产在线视频| 1024国产在线| 熟妇丰满人妻| 92午夜福利影院一区二区三区| 国产欧美精品一区二区| 亚卅精品无码久久毛片乌克兰| 无码国产伊人| 嫩草在线视频| 欧美一级一级做性视频| 国产一区二区免费播放| www.亚洲国产| 色偷偷一区| 国产一区二区人大臿蕉香蕉| 青青热久免费精品视频6| 国产又大又粗又猛又爽的视频| 亚洲第一页在线观看| 日韩AV无码免费一二三区| 欧美成人精品高清在线下载| 欧美人人干| 国产乱人伦AV在线A| 天天色综网| 国产迷奸在线看| 伊人久久综在合线亚洲91| 亚洲自偷自拍另类小说| 天天色天天操综合网| 国产精品密蕾丝视频| 亚洲欧美不卡视频| 久久熟女AV| 国产免费一级精品视频 | 久久成人18免费| 免费无码又爽又刺激高| 欧美综合激情| 91人妻在线视频| 精品成人一区二区三区电影 | 波多野结衣视频网站| 天天综合网在线| 在线亚洲精品福利网址导航| 国产精品视频猛进猛出| 午夜精品一区二区蜜桃| 日韩 欧美 小说 综合网 另类| 一本久道久综合久久鬼色| AV无码一区二区三区四区| 国内精品一区二区在线观看| 中文字幕伦视频| 国产极品美女在线播放| 久久黄色一级片| 日本黄色不卡视频| 婷婷综合缴情亚洲五月伊| 毛片在线看网站| 午夜无码一区二区三区| 国产精品视频第一专区| 国产真实二区一区在线亚洲| 狠狠色成人综合首页| 日本免费新一区视频| 精品精品国产高清A毛片| 欧美精品成人一区二区在线观看| 无码免费视频| 久久久波多野结衣av一区二区| 亚洲欧洲日韩国产综合在线二区| 四虎永久免费地址| 国产麻豆永久视频| 国产在线精品香蕉麻豆| 国产高清又黄又嫩的免费视频网站| 国产成人高清亚洲一区久久| 97国产在线观看| 多人乱p欧美在线观看| 小蝌蚪亚洲精品国产| 三级欧美在线| 另类专区亚洲| 国产精品无码在线看|