一、环境
数据库服务器: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 下载软...
阅读全文