一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

JBOSS實際IP地址訪問的問題

 yanjj 2012-06-18
反復(fù)嘗試后他們的答復(fù)是:“網(wǎng)頁打不開。。”

可是我自己本地是可以跑通的,本地HOST配置如下:

127.0.0.1            sinuobao.com

問題的雛形出現(xiàn)了:本機服務(wù)器已經(jīng)啟動并能訪問的情況下,遠程無法訪問。

我第一個反應(yīng)是 防火墻?可是關(guān)閉防火墻后依然不行。。

于是我把自己本地的HOST文件也改成了

10.1.30.77   sinuobao.com(實際IP)

果然,我也不能訪問。。

問題變成了:無法通過實際IP地址去訪問,只能用127.0.0.1或者localhost來訪問。

思考一下,啟動一個項目,通過127.0.0.1或者localhost可以訪問,而實際IP無法訪問。問題應(yīng)該是出在服務(wù)器上,應(yīng)該是服務(wù)器沒有監(jiān)聽實際IP造成的。由于我是剛把本地的服務(wù)器從tomcat換成jboss,于是我更加相信問題是由于Jboss服務(wù)器造成的。

Google之,知道了Jboss的一些常用配置文件的路徑:

1、相關(guān)DTD定義文件位于$JBOSS-HOME/docs/dtd,在其下的文件中可以查閱某個XML配置文件中某個元素或?qū)傩缘囊饬x。

2、數(shù)據(jù)源配置文件的路徑,$JBOSS-HOME/server/default/deploy,文件格式必須是*-ds.xml的樣式。不同的數(shù)據(jù)庫配置參數(shù)可參考$JBOSS-HOME/docs/examples/jca/下的示例文檔。

3、公共的jar包我們可以放在$JBOSS-HOME/server/default/lib下,如數(shù)據(jù)庫的JDBC jar,log4j.jar等,如果這些JAR已經(jīng)在該lib下放置了,那么我們的應(yīng)用WEB-INF/lib下不應(yīng)該再放置,否則JBOSS也會將他們再一次加載,白白占用內(nèi)存。

4、配置日志的文件,log4j.xml位于$JBOSS-HOME/server/default/conf下,具體配置下文還會有一點介紹

5、$JBOSS-HOME/server/default/work下存放的是JSP編譯后的.java 及.class文件,如果調(diào)試JSP時出錯了,可以到該目錄下(一級級去翻吧)去找對應(yīng)的文件,調(diào)試問題。還有個小TIPS,有時我們明明把一個JSP更新到對應(yīng)的目錄里了,可是去刷新頁面時,內(nèi)容還是舊的,為了解決該問題,我們可以到work目錄下,將對應(yīng)的.java及.class文件刪了,再刷新即可,這個原因不好推測,有時可以自動刷新,有時不行。單個的TOMCAT都能自動刷新,不知為何集成到JBOSS里卻有時不行。還需注意的事,你在清除舊的java、class文件時,不能為了省事,而直接刪除目錄,否則刷新時會報錯的,等著你的就是要重啟JBOSS服務(wù)了。

6、$JBOSS-HOME/server/default/log下存放的是日志文件,默認的log4j.xml配置是將日志輸出到該文件夾下的server.log文件,可以去查看信息進行調(diào)試。

7、配置應(yīng)用的WEB服務(wù)的端口號及參數(shù)

JBOSS4.2.2是在….

$JBOSS-HOME \server\default\deploy\jboss-web.deployer\server.xml中,找到8080,修改為你想設(shè)定的端口即可。

在官網(wǎng)上看到了以下說明:

JBossAS 4.2.0.GA

* JBossAS now binds its services to localhost (127.0.0.1) *by default*, instead of binding to all available interfaces (0.0.0.0). This was primarily done for security reasons because of concerns of users going to production without having secured their servers properly. To enable remote access by binding JBoss services to a particular interface, simply run jboss with the -b option. To bind to all available interfaces and re-enable the legacy behaviour use -b 0.0.0.0. In any case, be aware you still need to secure you server properly.

原因:
JBOSS 4.2以上版本服務(wù)啟動如果不加任何參數(shù)的話,只監(jiān)聽127.0.0.1,就是說只能用127.0.0.1或者localhost訪問,用本機的對外地址 訪問不了,同一網(wǎng)絡(luò)內(nèi)別的機子沒法訪問。除非你用參數(shù)-b ip地址 來綁定監(jiān)聽的地址才可以。
這和以前版本的JBOSS不一樣,以前版本的不加任何參數(shù)是監(jiān)聽本機所有的IP地址,現(xiàn)在必須使用參數(shù)-b 0.0.0.0才可以監(jiān)聽全部地址。

解決辦法有二:

   1. 1. 在jboss-4.2.2.GA\bin目錄下,新建start.bat文件,錄入如下內(nèi)容:
      run.bat -b 0.0.0.0
      保存即可。使用你新制作的start.bat文件啟動服務(wù)之后就可以IP訪問了。
   2. 2. 找到

$JBOSS-HOME \server\default\deploy\jboss-web.deployer\server.xml,找到:

JBOSS

<Connector port="8080" address="${jboss.bind.address}"

將其中的${jboss.bind.address}改為0.0.0.0

再次啟動Jboss,問題解決了。

JBoss常用參數(shù):

-c 服務(wù)配置名,指定JBoss啟動哪個服務(wù)配置,默認是default,常用有 -c all

-b 綁定JBoss服務(wù)的IP,特別在部署EJB服務(wù),只能通過綁定的IP查找EJB,

-h, –help                                      顯示幫助信息

-V, –version                                  顯示版本信息

-D<name>[=<value>]                          設(shè)置系統(tǒng)屬性

-d, –bootdir=<dir>  設(shè)置啟動補丁目錄的位置;必須是絕對路徑或者url

-p, –patchdir=<dir>    設(shè)置補丁目錄的位置;必須是絕對路徑或者url

-n, –netboot=<url>           從指定的url網(wǎng)絡(luò)位置啟動

-c, –configuration=<name>  指定服務(wù)器啟動的配置(default、all、minimal)

-B, –bootlib=<filename>  將其它的jar包添加到bootclasspath的前面

-L, –library=<filename>   將其它的jar包添加到 loaders classpath

-C, –classpath=<url>     將其它的url添加到loaders classpath

-P, –properties=<url>     從指定的url加載系統(tǒng)屬性

-b, –host=<host or ip>    所有JBoss Service綁定的地址

-g, –partition=<name>    HA分區(qū)的名稱(缺省為DefaultDomain)

-u, –udp=<ip>            UDP的多播地址

-l, –log=<log4j|jdk>       設(shè)置日志記錄插件類型

JBoss 4.2.2GA環(huán)境變量

JBOSS_HOME                              JBoss的位置

JAVA                                  Java運行程序的位置

JAVA_OPTS                             JVM啟動參數(shù)

MAX_FD        JBoss能夠使用文件描述符的最大數(shù)量(僅用于Un*x)

run.bat文件:

物理內(nèi)存

意思為:

-Xms128m 初始的java內(nèi)存堆大小 128M

-Xmx1024m 最大的java內(nèi)存堆大小 1024M

-XX:PermSize=64m GC預(yù)留的內(nèi)存,如果你的應(yīng)用有大量的Class被動態(tài)載入或卸載,你應(yīng)該將這個參數(shù)設(shè)大些

-XX:MaxPermSize=256m 最大的GC預(yù)留內(nèi)存

引用Antx & Webx for Dummies:

—————————————————————————————————————–

應(yīng)用服務(wù)器設(shè)置:不管是Tomcat還是JBoss,應(yīng)用都是比較占用內(nèi)存的(大量數(shù)據(jù)被緩存來提升性能),所以你在運行應(yīng)用前需要調(diào)整一下內(nèi)存,如果內(nèi)存比較小,你的程序可能都啟動不了。請?zhí)砑迎h(huán)境變量,JAVA_OPTS,將其設(shè)置為 “-Xms256M   -Xmx768M” ,這樣就而可以啦,這個設(shè)置對JBoss和Tomcat都可以適用。

—————————————————————————————————————–

另:

修改$jboss/bin/run.conf文件,找到“#JAVA_OPTS=”,如果沒有該字符串,請?zhí)砑樱⑷サ糇钋懊娴摹?”,修改該字符串(含雙引號)為JAVA_OPTS=”-server -Xms512m -Xmx1024m”,這是分配JVM的最小和最大內(nèi)存,取決于硬件物理內(nèi)存的大小,建議均設(shè)為物理內(nèi)存的一半。

遠程調(diào)試

遠程調(diào)試(remote debug):在開發(fā)環(huán)境下,通常會設(shè)計到程序的debug,在Java中就是通常hotspot機制完成的。如果你想調(diào)試你已經(jīng)運行的Tomcat和JBoss,請找到對應(yīng)的啟動腳本,然后添加以下啟動參數(shù)項:

JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y

    * server:(是”y”或否”n”):如“server=y”,收到一個要依附的調(diào)試應(yīng)用程序;如“server=n”,依附到指定地址的調(diào)試應(yīng)用程序。
    * address:連接傳送地址。如果server=n,嘗試依附到這個地址的調(diào)試應(yīng)用程序;如server=y,收到這個地址的連接。
    * timeout:如果server=y,它以毫秒為單位指定等待調(diào)試器依附的時間;如server=n,它以毫秒為單位指定依附到調(diào)試器所用的時間。
    * suspend:如“是”,JVM延緩執(zhí)行,直到調(diào)試器與被調(diào)試JVM建立連接。

JBoss 性能優(yōu)化(解決Jboss內(nèi)存緊張的問題)

修改$JBOSS_HOME/bin/run.conf文件

JAVA_OPTS=”-Xms 520m -Xmx 1220m -Xss 15120k +XX:AggressiveHeap”
1. +XX:AggressiveHeap

這使得 Xms 1220m沒有意義。這個參數(shù)讓jvm忽略Xmx參數(shù),瘋狂地吃完一個G物理內(nèi)存,再吃盡一個G的swap。
另外Xmx作為允許jvm使用的最大內(nèi)存數(shù)量,不應(yīng)該超過物理內(nèi)存的90%。
而之所以使用了這個參數(shù),是因為不加的話,JBoss會在運行一天左右的時間后迅速崩潰,甚至半個小時就崩潰。
2. -Xss 15120k
這使得JBoss每增加一個線程(thread)就會立即消耗15M內(nèi)存,而最佳值應(yīng)該是128K,默認值好像是512k.
這 就是JBoss剛啟動時,還有200Mb內(nèi)存富余,但會在一個小時內(nèi)迅速用完,因為服務(wù)器的threads在迅速增加。前3天,每天都多吃80Mb左右的 swap.在第四天開始穩(wěn)定下來。原因是:服務(wù)器在線程到達100之后,一般不再增加新的線程,新增加的在用完之后,會被迅速 destroy,1.25-2.10所使用的線程基本是1.21- 1.23創(chuàng)建的,因此沒有再消耗新的內(nèi)存。服務(wù)器持續(xù)運行時間達到20天。

3. -Xms

指定初始化內(nèi)存大小

作如下修改:
1.修改JAVA_OPTS,去掉+XX:AggressiveHeap,修改Xss?,F(xiàn)在的JAVA_OPTS為:
-Xms 520m -Xmx 900m -Xss 128k
2.修改deploy/jbossweb-tomcat55.sar/service.xml
將maxThreads根據(jù)目前的訪問量由默認的250降為75,并加入2個參數(shù): maxSparseThreads=”55″,minSparseThreads=”25″
3.去掉了一些不用的服務(wù)。

Jconsole: 用于對JVM中內(nèi)存,線程和類等的監(jiān)控。

在Jboss啟動參數(shù)里添加:
set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=$PROGNAME -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
啟動Jboss后,在命令行中輸入Jconsole,選擇遠程進程,輸入IP地址和上面設(shè)置的9999,用戶名密碼為空。

接下來,看一下這個工具的總括。
Jconsole能捕獲到以下信息:
概述  -  JVM概述和一些監(jiān)控變量的信息
內(nèi)存  -  內(nèi)存的使用信息
線程   - 線程的使用信息
類       - 加載java類的信息
VM    -  JVM摘要
MBeans  - 所有MBeans的信息

有了上面的概念之后,性能測試過程中需要關(guān)注哪些信息呢?一般主要關(guān)注內(nèi)存欄、線程欄、類欄,概述欄和VM欄次之,MBeans欄在追蹤具體問題時用到。下面詳細說明一下使用方法。

1. 內(nèi)存欄
內(nèi)存欄中顯示了內(nèi)存堆棧消耗情況、內(nèi)存池分區(qū)統(tǒng)計情況、垃圾回收情況等內(nèi)容,并以圖表實行顯示出來。點擊圖表下拉框,可以選擇具體需要的圖。

在這里,還可以強制執(zhí)行GC,另內(nèi)存回收更加爽歪歪!

2. 線程欄
線程欄中顯示了當(dāng)前運行的線程,并以圖表實行顯示出來。對于啟用多線程系統(tǒng)分析,非常有用。例如,它可以協(xié)助我們追蹤線程狀態(tài)、線程阻塞、線程等待、線程掛起、線程資源爭用問題。

3.類欄
類欄中顯示了當(dāng)前加載類的信息。并以圖表實行顯示出來。如果要了解當(dāng)前載入類的數(shù)量、已載入類的總數(shù)量、已卸載類的總數(shù)量,在這里查看非常有用。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产成人在线一区二区三区| 男人的天堂的视频东京热| 高跟丝袜av在线一区二区三区| 成人国产激情福利久久| 国内真实露脸偷拍视频| 亚洲视频一区二区久久久| 亚洲一区精品二人人爽久久| 国产丝袜女优一区二区三区| 日本在线不卡高清欧美| 狠狠干狠狠操在线播放| 99久久免费看国产精品| 情一色一区二区三区四| 午夜精品国产一区在线观看| 亚洲一区二区福利在线| 国产成人精品国产成人亚洲| 亚洲精品一二三区不卡| 精品视频一区二区三区不卡| 亚洲视频偷拍福利来袭| 中文字幕日产乱码一区二区| 国产精品二区三区免费播放心| 中国美女偷拍福利视频| 色老汉在线视频免费亚欧| 尹人大香蕉一级片免费看| 久七久精品视频黄色的| 99视频精品免费视频播放| 欧美国产日产综合精品| 日韩欧美精品一区二区三区| 女人精品内射国产99| 九九热视频经典在线观看 | 国产成人精品综合久久久看| 色哟哟国产精品免费视频| 欧美一区日韩二区亚洲三区| 在线亚洲成人中文字幕高清| 欧美一级片日韩一级片| 黑人粗大一区二区三区| 能在线看的视频你懂的| 人妻露脸一区二区三区| 久久re6热在线视频| 老熟妇2久久国内精品| 亚洲一区二区三区四区| 日韩精品视频免费观看|