1.鐜鍜岀増鏈笉瀵?/span>
Java紼嬪簭鐨勮繍琛屾湁鏃跺欏鐗堟湰鍜岀幆澧冪殑璁劇疆閮芥槸瑕佹眰鐨勶紝寰堝Java搴旂敤瀵圭幆澧冪殑璁劇疆鏈夌壒孌婄殑瑕佹眰錛堜緥濡侸DK鐨勭増鏈乧lasspath鐜鍙橀噺銆丣AVA_HOME鐜
鍙橀噺絳夌瓑錛夈傚洜姝ょ幆澧冨彉閲忕殑鏀瑰彉錛孞DK鐗堟湰鐨勬敼鍙橀兘浼氬紩璧稪ava紼嬪簭鐨勫惎鍔ㄩ棶棰樸傚洜姝ゅ湪Java搴旂敤鍙戠敓闂鐨勬椂鍊欙紝鍏堣媯鏌ュ綋鍓嶇殑鐜鍙橀噺鏄惁鍙戠敓
浜嗘敼鍙樸傝繖浜涙敼鍙樻槸澶氭柟闈㈠師鍥犻犳垚鐨勶紝寰堟湁鍙兘鏄畨瑁呬簡鍏朵粬鐨勮蔣浠躲備緥濡傚湪瀹夎浜哋racle鏁版嵁搴撶殑鏃跺欙紝Oracle瀹夎紼嬪簭浼氳嚜鍔ㄥ畨瑁呬竴涓狫DK鐗?
鏈紙閫氬父榪欎釜鐗堟湰姣旇緝浣庯級錛屽茍涓擮racle榪樺皢涓浜涚幆澧冨彉閲忔寚鍚戣繖涓狫DK錛岃繖浼氱粰浠ュ墠鐨凧ava搴旂敤甯︽潵涓瀹氱殑楹葷儲(鎴戝氨閬囧埌浜嗗嚑嬈?銆?br>
2.鍚姩鍙傛暟涓嶆紜?/h2>
Java鏄法騫沖彴鐨勮璦錛屼絾鏄惎鍔ㄥ弬鏁頒笉鏄法騫沖彴鐨勩傛湁寰堝鍚姩鍙傛暟鏄煇浜涙搷浣滅郴緇熺壒鏈夌殑鍙傛暟銆傚氨綆楁槸璺ㄥ鉤鍙扮殑鍚姩鍙傛暟錛屽湪涓嶅悓鐨勫鉤鍙頒笂鏈夌潃涓嶅悓鐨?
闄愬埗銆傚浜庝竴鑸殑Java紼嬪簭鍛橈紝鐢ㄥ緱姣旇緝澶氱殑鍙傛暟灝辨槸瀵笿ava鐨勫唴瀛榟eap鐨勫ぇ灝忕殑鎺у埗錛屼篃灝辨槸錛圶mx,Xms錛夌殑璁劇疆銆?nbsp;榪欎簺璁劇疆涔熻兘澶熼犳垚
Java搴旂敤鏃犳硶鍚姩銆?/p>
- Xmx璁劇疆澶皬
濡傛灉Xmx璁劇疆澶皬錛岃孞ava搴旂敤鍚姩涓鏃﹂渶瑕佽緝澶氱殑鍐呭瓨錛岄偅涓瀹氬氨浼氭姏鍑?#8220;OutOfMemory”鐨勯敊璇?br>
- Xmx璁劇疆澶ぇ
闅鵑亾緇欏簲鐢ㄧ▼搴忚緗洿澶氱殑鍐呭瓨涔熶笉琛屽悧錛熶簨瀹炰笂鏈夊緢澶欽ava紼嬪簭鍛樺凡緇忛亣鍒拌繖涓棶棰樹簡銆?2浣嶇殑Java铏氭嫙鏈烘墍鍗犵敤鐨勮繘紼嬬┖闂存渶澶氬彧鏈?G銆傚洜姝mx鐨勮緗笉浼氳秴榪囪繖涓肩殑錛屽鏋滆瓚呰繃錛岄渶瑕?4浣岼ava铏氭嫙鏈恒傚氨鏄繖4涓狦鐨勭┖闂達紝涔熶笉鏄叏閮ㄨ兘琚?
Java鑾峰緱銆傚湪Windows涓嬶紝Windows鍐呮牳闇瑕佸崰鐢?G鐨勮繘紼嬬┖闂達紝鐣欑粰Java鐨勭┖闂村彧鏈変竴鍗婏紝鍔犱笂Java铏氭嫙鏈哄叾浠栫殑鍐呭瓨寮閿錛堝寘鎷嚎
紼嬫爤寮閿錛屾湰鍦頒唬鐮佸紑閿錛夛紝鍦╓indows涓婅兘緇橷mx鍒嗛厤鐨勭┖闂村彧鏈?.5G宸﹀彸銆傚湪Solaris涓婂拰鍏朵粬Unix涓婅濂戒簺錛屾湁3.7G鍙互浣跨敤銆?
鍥犳錛屽鏋滃彂鐜板惎鍔ㄩ敊璇?#8220; Error occurred during initialization of VM Could not reserve enough space for object heap ”鎴栬?#8220;cannot allocate enough space for thread”錛岄偅涔堝皢Xmx鍊艱寰楀啀灝忕偣銆?/li>
3.緗戠粶绔彛琚崰鐢?/h2>
鏈夋椂鍊欙紝褰揺clips紿佺劧瑕佸叧闂紙鍑虹幇闂闈炴甯稿叧闂級錛岃繀閫熼噸鏂板惎鍔ㄨ繖涓簲鐢ㄤ細澶辮觸錛岀郴緇熸姤鍑?#8220;java.net.BindException: Address already in use: ”
鐨勯敊璇傝繖鏄洜涓烘Java搴旂敤闇瑕佸湪鏌愪釜Socket绔彛榪涜鐩戝惉錛岃岃繖涓鍙e綋鍓嶄笉鍙敤銆傛槸浠涔堝師鍥犻犳垚浜嗗綋鍓嶇鍙d笉鍙敤鍛紵鏈変袱縐嶅彲鑳斤細涓鏄埆鐨勫簲
鐢ㄧ▼搴忓厛鎶㈢敤浜嗚繖涓鍙c傝鎯崇煡閬撳埌搴曟槸鍝釜搴旂敤鐢ㄤ簡鏌愪釜绔彛錛屽彧闇瑕佷竴浜涚畝鍗曠殑鑴氭湰鍗沖彲銆備緥濡傦紝鍦╓INDOWS涓嬶紝浣跨敤涓嬮潰鐨勫懡浠ゅ氨鍙槸鐭ラ亾錛?080绔彛鏄惁鍗犵敤銆俷etstat.
榪樻湁灝辨槸鍦ㄥ叧闂璉DE鍚庣湅榪涚▼閲屽鏋滄湁JAVA.EXE鐨勮瘽.涓鑸氨鏄瀹冭嚜宸卞崰鐢ㄤ簡.
鍙﹀榪樻湁涓涓師鍥犲氨鏄繖涓猄ocket姝e湪“time_wait”鐨勭姸鎬併傞氬父涓涓簲鐢ㄥ湪鍏抽棴浠ュ悗錛孲ocket涓嶄細绔嬪埢閲婃斁錛堝湪TCP/IP鐨勫崗
璁腑瑙勫畾錛夛紝鍦═ime_WAIT鐘舵佷笅闇瑕佷繚鎸?鍒嗛挓錛堜笉鍚岀殑鎿嶄綔緋葷粺鏃墮棿涓嶄竴鏍鳳級銆傝瑙e喅榪欎釜闂錛岄渶瑕佸湪Java紼嬪簭涓姞涓?
“serverSocket.setReuseAddress(true);”灝辮兘蹇熺殑閲嶇敤榪欎釜Socket銆?/p>
4.浜轟負鐨勭枏蹇?/h2>
榪樻湁涓浜涗漢涓虹殑鐤忓拷錛屼緥濡傞厤緗唴瀹瑰啓閿?閰嶇疆鏂囦歡鎹熷錛屽簱鏂囦歡涓㈠け絳夌瓑閮借兘寮曡搗鍚姩鐨勯棶棰?鑷繁搴旂敤涓娉ㄦ剰涓涓?搴旇榪樿兘鎵懼嚭寰堝涓嶅悓鐨勬儏鍐墊潵.銆?br>

]]>