锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
鍦ㄦ瘮杈冭繖涓や釜妯″紡涔嬪墠錛屾垜浠鍏堢殑鎼炴槑鐧藉嚑涓蹇碉紝浠涔堟槸闃誨鍜岄潪闃誨錛屼粈涔堟槸鍚屾鍜屽紓姝?/span>,鍚屾鍜屽紓姝?/span>鏄拡瀵瑰簲鐢ㄧ▼搴忓拰鍐呮牳鐨勪氦浜掕岃█鐨?/span>錛屽悓姝ユ寚鐨勬槸鐢ㄦ埛榪涚▼瑙﹀彂IO鎿嶄綔騫剁瓑寰呮垨鑰呰疆璇㈢殑鍘繪煡鐪?/span>IO鎿嶄綔鏄惁灝辯華錛岃屽紓姝ユ槸鎸囩敤鎴瘋繘紼嬭Е鍙?/span>IO鎿嶄綔浠ュ悗渚垮紑濮嬪仛鑷繁鐨勪簨鎯咃紝鑰屽綋IO鎿嶄綔宸茬粡瀹屾垚鐨勬椂鍊欎細寰楀埌IO瀹屾垚鐨勯氱煡銆傝岄樆濉炲拰闈為樆濉炴槸閽堝浜庤繘紼嬪湪璁塊棶鏁版嵁鐨勬椂鍊欙紝鏍規(guī)嵁IO鎿嶄綔鐨勫氨緇姸鎬佹潵閲囧彇鐨勪笉鍚屾柟寮忥紝璇寸櫧浜嗘槸涓縐嶈鍙栨垨鑰呭啓鍏ユ搷浣滃嚱鏁扮殑瀹炵幇鏂瑰紡錛岄樆濉炴柟寮忎笅璇誨彇鎴栬呭啓鍏ュ嚱鏁板皢涓鐩寸瓑寰咃紝鑰岄潪闃誨鏂瑰紡涓嬶紝璇誨彇鎴栬呭啓鍏ュ嚱鏁頒細绔嬪嵆榪斿洖涓涓姸鎬佸箋?/span>
涓鑸潵璇?span>I/O妯″瀷鍙互鍒嗕負錛氬悓姝ラ樆濉烇紝鍚屾闈為樆濉烇紝寮傛闃誨錛屽紓姝ラ潪闃誨IO
鍚屾闃誨IO錛?/span>
鍦ㄦ縐嶆柟寮忎笅錛岀敤鎴瘋繘紼嬪湪鍙戣搗涓涓?span>IO鎿嶄綔浠ュ悗錛屽繀欏葷瓑寰?/span>IO鎿嶄綔鐨勫畬鎴愶紝鍙湁褰撶湡姝e畬鎴愪簡IO鎿嶄綔浠ュ悗錛岀敤鎴瘋繘紼嬫墠鑳借繍琛屻?/span>JAVA浼犵粺鐨?/span>IO妯″瀷灞炰簬姝ょ鏂瑰紡錛?/span>
鍚屾闈為樆濉?span>IO:
鍦ㄦ縐嶆柟寮忎笅錛岀敤鎴瘋繘紼嬪彂璧蜂竴涓?span>IO鎿嶄綔浠ュ悗杈瑰彲榪斿洖鍋氬叾瀹冧簨鎯咃紝浣嗘槸鐢ㄦ埛榪涚▼闇瑕佹椂涓嶆椂鐨勮闂?span>IO鎿嶄綔鏄惁灝辯華錛岃繖灝辮姹傜敤鎴瘋繘紼嬩笉鍋滅殑鍘昏闂紝浠庤屽紩鍏ヤ笉蹇呰鐨?/span>CPU璧勬簮嫻垂銆傚叾涓洰鍓?/span>JAVA鐨?/span>NIO灝卞睘浜庡悓姝ラ潪闃誨IO銆?/span>
寮傛闃誨IO錛?/span>
姝ょ鏂瑰紡涓嬫槸鎸囧簲鐢ㄥ彂璧蜂竴涓?span>IO鎿嶄綔浠ュ悗錛屼笉絳夊緟鍐呮牳IO鎿嶄綔鐨勫畬鎴愶紝絳夊唴鏍稿畬鎴?/span>IO鎿嶄綔浠ュ悗浼氶氱煡搴旂敤紼嬪簭錛岃繖鍏跺疄灝辨槸鍚屾鍜屽紓姝ユ渶鍏抽敭鐨勫尯鍒紝鍚屾蹇呴』絳夊緟鎴栬呬富鍔ㄧ殑鍘昏闂?/span>IO鏄惁瀹屾垚錛岄偅涔堜負浠涔堣鏄樆濉炵殑鍛紵鍥犱負姝ゆ椂鏄氳繃select緋葷粺璋冪敤鏉ュ畬鎴愮殑錛岃?/span>select鍑芥暟鏈韓鐨勫疄鐜版柟寮忔槸闃誨鐨勶紝鑰岄噰鐢?/span>select鍑芥暟鏈変釜濂藉灝辨槸瀹冨彲浠ュ悓鏃剁洃鍚涓枃浠跺彞鏌勶紝浠庤屾彁楂樼郴緇熺殑騫跺彂鎬э紒
寮傛闈為樆濉?span>IO:
鍦ㄦ縐嶆ā寮忎笅錛岀敤鎴瘋繘紼嬪彧闇瑕佸彂璧蜂竴涓?span>IO鎿嶄綔鐒跺悗绔嬪嵆榪斿洖錛岀瓑IO鎿嶄綔鐪熸鐨勫畬鎴愪互鍚庯紝搴旂敤紼嬪簭浼氬緱鍒?/span>IO鎿嶄綔瀹屾垚鐨勯氱煡錛屾鏃剁敤鎴瘋繘紼嬪彧闇瑕佸鏁版嵁榪涜澶勭悊灝卞ソ浜嗭紝涓嶉渶瑕佽繘琛屽疄闄呯殑IO璇誨啓鎿嶄綔錛屽洜涓?/span>鐪熸鐨?/span>IO璇誨彇鎴栬呭啓鍏ユ搷浣滃凡緇忕敱鍐呮牳瀹屾垚浜嗐傜洰鍓?span>Java涓繕娌℃湁鏀寔姝ょIO妯″瀷銆?nbsp;
鎼炴竻妤氫簡浠ヤ笂姒傚康浠ュ悗錛屾垜浠啀鍥炶繃澶存潵鐪嬬湅錛?span>Reactor妯″紡鍜?/span>Proactor妯″紡銆?/span>
棣栧厛鏉ョ湅鐪?span>Reactor妯″紡錛?/span>Reactor妯″紡搴旂敤浜庡悓姝?/span>I/O鐨勫満鏅傛垜浠垎鍒互璇繪搷浣滃拰鍐欐搷浣滀負渚嬫潵鐪嬬湅Reactor涓殑鍏蜂綋姝ラ錛?/span>
璇誨彇鎿嶄綔錛?/span>
1. 搴旂敤紼嬪簭娉ㄥ唽璇誨氨闇浜嬩歡鍜岀浉鍏寵仈鐨勪簨浠跺鐞嗗櫒
2. 浜嬩歡鍒嗙鍣ㄧ瓑寰呬簨浠剁殑鍙戠敓
3. 褰撳彂鐢熻灝遍渶浜嬩歡鐨勬椂鍊欙紝浜嬩歡鍒嗙鍣ㄨ皟鐢ㄧ涓姝ユ敞鍐岀殑浜嬩歡澶勭悊鍣?/span>
4. 浜嬩歡澶勭悊鍣ㄩ鍏堟墽琛屽疄闄呯殑璇誨彇鎿嶄綔錛岀劧鍚庢牴鎹鍙栧埌鐨勫唴瀹硅繘琛岃繘涓姝ョ殑澶勭悊
鍐欏叆鎿嶄綔綾諱技浜庤鍙栨搷浣滐紝鍙笉榪囩涓姝ユ敞鍐岀殑鏄啓灝辯華浜嬩歡銆?/span>
涓嬮潰鎴戜滑鏉ョ湅鐪?span>Proactor妯″紡涓鍙栨搷浣滃拰鍐欏叆鎿嶄綔鐨勮繃紼嬶細
璇誨彇鎿嶄綔錛?/span>
1. 搴旂敤紼嬪簭鍒濆鍖栦竴涓紓姝ヨ鍙栨搷浣滐紝鐒跺悗娉ㄥ唽鐩稿簲鐨勪簨浠跺鐞嗗櫒錛屾鏃朵簨浠跺鐞嗗櫒涓嶅叧娉ㄨ鍙?/span>灝辯華浜嬩歡錛岃屾槸鍏蟲敞璇誨彇瀹屾垚浜嬩歡錛岃繖鏄尯鍒簬Reactor鐨勫叧閿?/span>
2. 浜嬩歡鍒嗙鍣ㄧ瓑寰呰鍙栨搷浣滃畬鎴愪簨浠?/span>
3. 鍦ㄤ簨浠跺垎紱誨櫒絳夊緟璇誨彇鎿嶄綔瀹屾垚鐨勬椂鍊欙紝鎿嶄綔緋葷粺璋冪敤鍐呮牳綰跨▼瀹屾垚璇誨彇鎿嶄綔錛屽茍灝嗚鍙栫殑鍐呭鏀懼叆鐢ㄦ埛浼犻掕繃鏉ョ殑緙撳瓨鍖轟腑銆傝繖涔熸槸鍖哄埆浜?span>Reactor鐨勪竴鐐癸紝Proactor涓紝搴旂敤紼嬪簭闇瑕佷紶閫掔紦瀛樺尯銆?/span>
4. 浜嬩歡鍒嗙鍣ㄦ崟鑾峰埌璇誨彇瀹屾垚浜嬩歡鍚庯紝嬋媧誨簲鐢ㄧ▼搴忔敞鍐岀殑浜嬩歡澶勭悊鍣紝浜嬩歡澶勭悊鍣ㄧ洿鎺ヤ粠緙撳瓨鍖鴻鍙栨暟鎹紝鑰屼笉闇瑕佽繘琛屽疄闄呯殑璇誨彇鎿嶄綔銆?/span>
Proactor涓啓鍏ユ搷浣滃拰璇誨彇鎿嶄綔錛屽彧涓嶈繃鎰熷叴瓚g殑浜嬩歡鏄啓鍏ュ畬鎴愪簨浠躲?/span>
浠庝笂闈㈠彲浠ョ湅鍑猴紝Reactor鍜?/span>Proactor妯″紡鐨勪富瑕佸尯鍒氨鏄湡姝g殑璇誨彇鍜屽啓鍏ユ搷浣滄槸鏈夎皝鏉ュ畬鎴愮殑錛?/span>Reactor涓渶瑕佸簲鐢ㄧ▼搴忚嚜宸辮鍙栨垨鑰呭啓鍏ユ暟鎹紝鑰?/span>Proactor妯″紡涓紝搴旂敤紼嬪簭涓嶉渶瑕佽繘琛屽疄闄呯殑璇誨啓榪囩▼錛屽畠鍙渶瑕佷粠緙撳瓨鍖鴻鍙栨垨鑰呭啓鍏ュ嵆鍙紝鎿嶄綔緋葷粺浼氳鍙栫紦瀛樺尯鎴栬呭啓鍏ョ紦瀛樺尯鍒扮湡姝g殑IO璁懼.
緇間笂鎵榪幫紝鍚屾鍜屽紓姝ユ槸鐩稿浜庡簲鐢ㄥ拰鍐呮牳鐨勪氦浜掓柟寮忚岃█鐨勶紝鍚屾 闇瑕佷富鍔ㄥ幓璇㈤棶錛岃屽紓姝ョ殑鏃跺欏唴鏍稿湪IO浜嬩歡鍙戠敓鐨勬椂鍊欓氱煡搴旂敤紼嬪簭錛岃岄樆濉炲拰闈為樆濉炰粎浠呮槸緋葷粺鍦ㄨ皟鐢ㄧ郴緇熻皟鐢ㄧ殑鏃跺欏嚱鏁扮殑瀹炵幇鏂瑰紡鑰屽凡銆?/span>