一、環境
數據庫服務器:Oracle 9i2
操作系統:Windows XP SP2
JBoss版本:4.2.2
JDK:Sun 1.5.0.13
網絡配置:同一機器的一個網卡上綁定兩個ip地址192.168.1.18和192.168.1.147
二、配置
1.配置消息和事務日志持久保存的數據源,從JBoss安裝位置的docs\examples\jca目錄下拷貝到server\all\deploy目錄下,并修改其中的連接配置,這里使用OracleDS作為持久保存的數據源。注意:別忘了把Oracle的jdbc驅動程序拷貝到server\all\lib目錄下。
2.修改DestinationManager配置,刪除server\all\deploy-hasingleton\jms目錄下的hsqldb-jdbc2-service.xml文件,拷貝docs\examples\jms目錄下的oracle-jdbc2-service.xml到server\all\deploy-hasingleton目錄下,使用OracleDS作為DestinationManager的數據源。
3. 修改StateManager配置,將其中的數據源配置由
jboss.jca:service=DataSourceBinding,name=DefaultDS 改
jboss.jca:service=DataSourceBinding,name=OracleDS4. 配置測試的Topic,在server\all\deploy-hasingleton\jms目錄下新建一個名為jbossweek-jms-service.xml文件,
<mbean code="org.jboss.mq.server.jmx.Topic" name="jboss.mq.destination:service=Topic,name=jbossweekTopic">
<depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
</mbean>5. 創建node1的服務器配置,將server\all目錄復制一份改名為node1
6. 配置完成。
三、驗證
1. 分別以run –c all –b192.168.1.17和run –c node1–b192.168.1.148先后啟動all和node1配置。此時192.168.1.17為主節點,瀏覽http://192.168.1.17:8080/jmx-console/。打開JNDIView可以看到jbossweekTopic的JNDI名稱。此時192.168.1.17為主節點,瀏覽http://192.168.1.148:8080/jmx-console/。打開JNDIView就會發現沒有jbossweekTopic的JNDI名稱。
2. 關閉192.168.1.17上的all服務器,此時在192.168.1.148上的node服務器的控制臺上會出現如下信息:
13:11:13,921 INFO [TreeCache] viewAccepted(): [192.168.1.17:2292|2] [192.168.1.148:2327]
13:11:14,015 INFO [TreeCache] viewAccepted(): [192.168.1.17:2288|2] [192.168.1.148:2321]
13:11:14,218 INFO [DefaultPartition] New cluster view for partition DefaultPartition (id: 2, delta: -1) : [192.168.1.148:1099]
13:11:14,218 INFO [DefaultPartition] I am (192.168.1.148:1099) received members hipChanged event: 13:11:14,218 INFO [DefaultPartition] Dead members: 1 ([192.168.1.17:1099])
13:11:14,218 INFO [DefaultPartition] New Members : 0 ([])
13:11:14,218 INFO [DefaultPartition] All Members : 1 ([192.168.1.148:1099])
13:11:14,453 INFO [TreeCache] viewAccepted(): [192.168.1.17:2279|2] [192.168.1.148:2306]
13:11:16,218 INFO [TomcatDeployer] deploy, ctxPath=/jbossmq-httpil, warUrl=.../deploy-hasingleton/jms/jbossmq-httpil.sar/jbossmq-httpil.war/
13:11:17,406 INFO [jbossweekTopic] Bound to JNDI name: topic/jbossweekTopic
13:11:17,453 INFO [A] Bound to JNDI name: queue/A
13:11:17,453 INFO [B] Bound to JNDI name: queue/B
13:11:17,468 INFO [C] Bound to JNDI name: queue/C
13:11:17,468 INFO [D] Bound to JNDI name: queue/D
13:11:17,468 INFO [ex] Bound to JNDI name: queue/ex
13:11:17,484 INFO [testTopic] Bound to JNDI name: topic/testTopic
13:11:17,500 INFO [securedTopic] Bound to JNDI name: topic/securedTopic
13:11:17,500 INFO [testDurableTopic] Bound to JNDI name: topic/testDurableTopic
13:11:17,500 INFO [testQueue] Bound to JNDI name: queue/testQueue
13:11:17,562 INFO [UILServerILService] JBossMQ UIL service available at : /192.168.1.148:8093 13:11:17,609 INFO [DLQ] Bound to JNDI name: queue/DLQ
3. JMS集群的主節點自動切換到192.168.1.148上的node1節點,瀏覽http://192.168.1.148:8080/jmx-console/。打開JNDIView就會找到jbossweekTopic的JNDI名稱。
http://linliangyi2007.iteye.com/blog/316997http://docs.redhat.com/docs/zh-CN/JBoss_Enterprise_Application_Platform/5/html/JBoss_Messaging_User_Guide/index.html
找到你運行的instance的conf/jboss-service.xml, eg: $JBOSS_HOME/server/default/conf/jboss-service.xml
找到
mbean服務中,名字為 ServiceBindingManager 的,里面有個叫做ports-01的內容,打開這個注釋,就可以了。
如果你要運行多個,那么就需要有多個ServiceBindingManager ports-02,這是第三個,ports-03這是地四個,
這個文件,對應${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml里面的ports-01部分,ports-02部分,只不過需要在這里啟用,啟動的同時,$JBOSS_HOME/server/default/deploy/jboss-web.deployer/server.xml里面的就不起作用了。
提交訂票訂單的處理流程如下:
1)用戶通過瀏覽器訪問系統URL
2)界面集群F5將請求轉發至某一節點,通過比較用戶數據庫的內容進行身份鑒權。
3)鑒權成功后進入訂票,提交訂票訂單(查詢流程暫不討論)界面顯示請等待
4)訂票消息被發送至總線部件(接口可用web Service、RMI、甚至自定義協議都可以)
5)總線收到訂票消息、去Cache集群查詢相關車次
6)Cache根據自身維護的車次余票表,返回查詢結果,如果有余票,轉7)。如果無票了,則總線返回界面集群“沒票了”,界面提示用戶明天再試。
7)若有余票,則總線返回界面集群“正在出票,請等待”,并將訂票請求壓入隊列。且發消息至Cache,告訴CACHE將訂票請求加入隊列。
8)Cache收到總線隊列增加1個的消息,將自身維護的對應車次余票數減1個。
9)總線另一線程負責從隊列中取消息,并發送至出票部件。
10)出票部件產生訂票結果,并修改數據庫,發送“訂票成功”消息回總線。
11)總線將訂票成功消息直接回傳至界面集群。
12)用戶看到訂票結果。
這篇文章本要講了兩方面的內容
第一:對MyEclipse的解釋,讓您更加細致準確的了解MyEclipse,
第二:對MyEclipse7.5的優化 MyEclipse企業級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對Eclipse IDE的擴展,利用它我們可以在數據庫和J2EE的開發、發布,以及應用程序服務器的整合方面極大的提高工作效率。MyEclipse是功能豐富的J2EE集成開發環境,包括了完備的編碼、調試、測試和發布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。
在結構上,MyEclipse的特征可以被分為7類:
1. J2EE模型
2. WEB開發工具
3. EJB開發工具
4. 應用程序服務器的連接器
5. J2EE項目部署服務
6. 數據庫服務
7. MyEclipse整合幫助
對于以上每一種功能上的類別,在Eclipse中都有相應的功能部件,并通過一系列的插件來實現它們。MyEclipse結構上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進行單獨的擴展和升級。
簡單而言,MyEclipse是Eclipse的插件,也是一款功能強大的J2EE集成開發環境,支持代碼編寫、配置、測試以及除錯。 MyEclipse7.5的優化 1、去除不需要加載的模塊 一個系統20%的功能往往能夠滿足80%的需求,MyEclipse也不例外,我們在大多數時候只需要20%的系統功能,所以可以將一些不使用的模塊禁止 加載啟動。通過Windows - Preferences打開配置窗口,依次選擇左側的General - Startup and Shutdown,這個時候在右側就顯示出了Eclipse啟動時加載的模塊,可以根據自己的實際情況去除一些模塊。
windows–>perferences–>general–>startup and shutdown 關掉沒用的啟動項:
WTP :一個跟myeclipse差不多的東西,主要差別是 WTP 是免費的,如果使用myeclipse,這個可以取消
Mylyn:組隊任務管理工具,類似于 CVS ,以任務為單位管理項目進度,沒用到的可以取消
Derby:一種保存成 jar 形式的數據庫,我沒用到,取消一大排以 MyEclipse EASIE 打頭的啟動項:myeclipse 支持的服務器,只選自己用的,其他取消,比如我只選了tomcat6.x
2、取消MyEclipse在啟動時自動驗證項目配置文件 默認情況下MyEclipse在啟動的時候會自動驗證每個項目的配置文件,這是一個非常耗時的過程,
可以在Preferences窗口依次選擇 MyEclipse Enterprise Workbench - Validation,然后在右側的Validator列表中只保留 Manual 項就可以了(Manual全部勾選,Bulid項只留下第一項)。
如果需要驗證的時候只需要選中文件,然后右鍵選擇 MyEclipse - Run Validation就可以了。 windows–>perferences–>myeclipse–>validation
把除了manual 下面的全部點掉,build下只留 classpath dependency Validator 手工驗證方法: 在要驗證的文件上,單擊鼠標右鍵–>myeclipse–>run validation
3、去掉拼寫檢查(如果你覺的有用可以不去) 拼寫檢查會給我們帶來不少的麻煩,我們的方法命名都會是單詞的縮寫,他也會提示有錯,所以最好去掉,沒有多大的用處:
windows–>perferences–>general–>validation->editors->Text Editors->spelling myeclipse 打開 jsp 的默認編輯器不好,會同時打開預覽
windows–>perferences–>general–>editors->file associations, 把默認改成 MyEclipse JSP Editor()
原默認的jsp編輯器是 MyEclipse Visual JSP Designer,顧名思義,此編譯器是jsp可視化編輯器,對于初學者有很多的幫助,但修改此項的默認編輯器其實可以提高啟動速度)
4、關閉自動更新 如果是myeclipse7.5: (1)關掉maven自動更新: window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven, 關閉所有Download和Update開頭的選項,共四項(去掉前面的勾) (2)關閉更新調度:window –> preferences –> General –> Startup and Shutdown –> Automatic Updates Scheduler(去掉前面的勾) (3)window –> preferences –>Myeclipse Dashboard,關閉Show……on start
5、加大JVM的非堆內存 打開 myeclipse.ini
-startup
../Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar
--launcher.library
../Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
C:\Users\lenovo\AppData\Local\Genuitec\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\jre\bin\client\jvm.dll
-vmargs
-Xmx384m
-XX:MaxPermSize=384m
-XX:ReservedCodeCacheSize=96m 以上是我的myeclipse.ini,需要修改是-Xmx,-XX:MaxPermSize,-XX:ReservedCodeCacheSize,
將這三項的值調大,但并不是越大越好,曾經在相同的條件下做過測試(內存2GB),-Xmx,-XX:MaxPermSize的值為384m時比512m時要快(視具體的計算機而定),
-Xmx,-XX:MaxPermSize的值設為同樣大小且兩者之和不能超出你的計算機本身的內存大小
6、window-preferences-MyEclipse Enterprise Workbench-Maven4MyEclipse-Maven,將Maven JDK改為電腦上安裝的JDK,即不使用myeclipse提高的JDK
登記add按鈕,選擇你的電腦上的JDK即可(注意:不是JRE,我的值為:Java6.014)
摘要: Watij介紹
Javadoc API for Watij:
http://watij.sourceforge.net/docs/api/index.html?watij/IE.html
第三章 Watij環境設置
3.1 Watij環境要求
l Watij 3.2.1
l JDK 1.5
l Java IDE(本文中使用Eclipse)
3.2 Watij安裝及設置
l 下載軟...
閱讀全文