2016年2月6日星期六

EAP_044:单机环境下 EAP 单节点EJB Profile开箱性能指标

环境:OS X EI Capitan 10.11.3 + JBoss EAP 6.4.0 + DayTrader 3.0

1. 首先部署DayTrader应用,请参看《JBoss_008:部署DayTrader应用》。

2. EJB Profile 共有11个测试用例
(1)PingServlet2Session   
测试对无状态 Session EJB 的 servlet 调用的关键功能。Session EJB 执行一个简单的计算并返回结果。
(2)PingServlet2Entity   
测试对 EJB 3.0 容器托管实体的 servlet 调用的关键功能。在这个测试中,EJB 实体表示数据库表中的一行数据。
(3)PingServlet2Session2Entity   
测试 Session EJB 到 Entity EJB 路径的完整 servlet,以从数据库检索一行数据。(4)PingServlet2Session2EntityCollection   
测试通过调用一个 Session EJB 扩展前面的 EJB Entity 测试,该 Session EJB 在返回一组 Entity 对象的 Entity 上使用一个 finder 方法。所有对象由 servlet 显示。
(5)PingServlet2Session2CMROne2One   
测试通过一个 EJB 3.0 CMR 一对一关系驱动 Entity EJB 获得另一个 Entity EJB 的数据。(6)PingServlet2Session2CMROne2Many   
测试通过一个 EJB 3.0 CMR 一对多关系驱动 Entity EJB 获得另一个 Entity EJB 的数据。
(7) PingServlet2Session2JDBC   
测试 Session EJB 到 JDBC 路径的完整 servlet,从数据库检索一行数据。
(8) PingServlet2Session2JDBCCollection   
通过调用一个 Session EJB 到 JDBC 的路径(从数据库返回多个行)扩展前面的 JDBC 测试。(9)PingServlet2MDBQueue   
要求消息根据消息驱动(MDB)进行排队。每个对 servlet 的请求向队列发出一条消息。MDB 异步接收消息并每隔 100 条消息输出一次消息传递统计数据。
(10) PingServlet2MDBTopic   
将消息驱动到一个基于主体的发布/订阅 MDB。每个对 servlet 的请求向 Topic 发布一条消息。TradeStreamMDB 异步接收消息并每隔 100 条消息输出一次消息传递统计数据。该主题的其他订阅者也将接收消息。
(11)PingServlet2TwoPhase   
驱动一个 Session EJB,它将使用 findByPrimaryKey(DB 访问)调用 Entity EJB,然后通过一个 JMS 队列(消息访问)向 MDB 发布一条消息。这些操作被封装到一个全局的分两阶段的事务中并被提交。

3. 测试
100 个线程,运行120秒,每个采样器调动之间休息5ms。
 ./bin/jmeter.sh -n -t ./test/DayTraderTestPlan-EJBProfile.jmx -l ./result/DayTraderTestPlan-EJBProfile_`date +'%y%m%d%H%M%S'`.csv

没有评论: