[jboss-user] [JBoss Messaging] - Re: Performance issue for persistent manager of JBoss Messag

2008-07-10 Thread gary.c.chen
Our queue configuration is as follow : 

  | 
  | 
  |jboss.messaging:service=ServerPeer
  |jboss.messaging:service=PostOffice
  |1342178
  |1
  |1
  |   
  |-1
  |true  
  | 
  | 
  | 

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4163762#4163762

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4163762
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: Performance issue for persistent manager of JBoss Messag

2008-07-10 Thread gary.c.chen
We are now using JBM 1.4.0.SP3, and we just use a queue with one message 
producer and one message consumer, never use topic.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4163739#4163739

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4163739
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Performance issue for persistent manager of JBoss Messaging

2008-07-10 Thread gary.c.chen
I am very confused by the internal behavior of persistent manager of jboss 
messaging with ms sql server.

I use event tracer of ms sql server to capture sql statements sent out from one 
jms message comes into jms queue to consumed by consumer.

The following sql statements shows one jms message persistent can cause about 
twenty insert statement to be executed, which cause excessive disk I/O activity.

Does anyone can help me explain why did it happen? And What's the solution to 
obtain higher performance?

Best Regards.


  | SET IMPLICIT_TRANSACTIONS ON
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854870163456, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854886809601, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854899261442, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854900899843, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854907125764, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854909747205, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854918266886, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854922854407, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854933012488, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854943825929, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 2, 0, NULL, 
N'C', 39832854953984010, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | ex

[jboss-user] [Microcontainer] - MSSQL Persistent Manager issue

2008-07-09 Thread gary.c.chen
I am so confused on the sql trace when I open persistent mechanism for jms 
message with mssql server database.

When one jms message is produced and consumed,  the following sql statements 
has been captured. You can see, one jms message cause 25 times insert statement 
execution, and It already result in serious performance issue. Does anyone can 
help me explain what's the root cause and how to avoid it for better 
performance.

  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874033217536, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874036756481, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874038394882, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874040360963, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874041344004, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874051829765, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874059694086, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874070835207, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874079682568, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874083614729, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, SCHED_DELIVERY) VALUES 
(@P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8)', N'@P1 bigint ,@P2 bigint ,@P3 bigint 
,@P4 nvarchar(4000) ,@P5 bigint ,@P6 bigint ,@P7 int ,@P8 bigint ', 13, 0, 
NULL, N'C', 39832874097049610, NULL, 0, 0
  | go
  | IF @@TRANCOUNT > 0 ROLLBACK TRAN
  | go
  | exec sp_executesql N'INSERT INTO JBM_MSG_REF (CHANNEL_ID, MESSAGE_ID, 
TRANSACTION_ID, STATE, ORD, PAGE_ORD, DELIVERY_COUNT, S

[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-22 Thread gary.c.chen
timfox, could you please give me a reply ? thanks.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159807#4159807

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159807
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-20 Thread gary.c.chen
the duration parameter to ten minutes

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159507#4159507

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159507
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-20 Thread gary.c.chen
Afterward we setted up another test, this time we setted the  parameter to ten 
minutes,
and we setted the FullSize parameter, PageSize parameter, DownCacheSize 
parameter of the queue to be tested 
to 3355444, 1, and 1, and the messages we sended in this test were all 
NON_PERSISTENT messages, so this 
time all the messages that sended to the queue were all stored in the memory. 
We also checked that the 
persistent database had never been writed or readed.

In this test case we saw that messages send rate was very fast, almost equaled 
to it's
target send rate, but the messages received by the consumer were so a little, 
almost equaled to 1/10
of the messages sended to the queue, so the mesages been buffered in the queue 
while receiving message
 were several hundred thousand or several million. And along with the send rate 
to be increased the buffered number
 was increased, so the time to complete the receving job increased too. And the 
most important point was that the 
 receive rate was so poor, almost equaled to 1/10 of it's send rate per 
parallel test.
 
 Why the messages receive rate so poor? 
 Does the queue must scan some of (or all) the message handles (or something 
like that) while a consumer receive a message 
 because of the message selector mechanism ?
 Does the queue will copy all the message handles or synchronize all the 
message handles before it do this scan
 , so the message receiving time of one message receiving trip will increase 
along with the messages buffered 
 in the queue increased ?
 Does message receive rate is computed like this :
 all messages received / message job spended time ?


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159505#4159505

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159505
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-19 Thread gary.c.chen
Yes, I got it, thanks fox.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159439#4159439

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159439
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-19 Thread gary.c.chen
Another question :
How can I turn off the persistent while sending and receiving messages ? That 
means all the messages sended to the queues are just store in memory. 
regardless PERSISTENT message or NON_PERSISTENT message.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159217#4159217

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159217
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: I got some performance problem while sending a lot of me

2008-06-19 Thread gary.c.chen
As you said, Database that persistent manager processes is bottleneck. Is there 
any method can improve performance of the traffic between jms queue and 
persistent db? Exactly, we tried to use batch mode for persistent manager. But 
I don't find any option to alternate the batch size. Finally, I want to know if 
the persistent action blocks jms queue receiving and writing?

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4159215#4159215

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4159215
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - I got some performance problem while sending a lot of messag

2008-06-19 Thread gary.c.chen
Hi,

I am now attempting to use JBM as a JMS Server on my application. 
I did a performance test on it using the JBossJMSNewPerformanceBenchmark 
framework, 
but the result was so difference from the performance result that we saw on the 
development wiki.

My test environment and executors setup were as follow :

1. I was uesing two machines to achieve this test, one had a JBoss AS running 
on it (machine A), 
another was deployed a MySql database server (machine B), I was using it as the 
JBM persistence store.
I deployed the PerformanceBenchmark framework JBM executor (the 
rmi-executor-scoped.sar file) as a MBean on JBoss AS (machine A).
And I runned the control & report tool (using 'ant run') on machine B.And all 
the executor and JBoss AS configurations were using 
default parameters except the JVM option using for starting JBoss AS.I setted 
min and max VM memory to 1024m.
The two machines were all using Sun JDK 1.5_15.

2. My first test config was as follow :


  |REMOTE
  |/queue/testQueue
  |/ConnectionFactory
  |AUTO_ACKNOWLEDGE
  |NON_PERSISTENT
  |
org.jboss.jms.perf.framework.factories.MessageMessageFactory
  |100
  | 
  |
  |60
  | 
  |
  |   
  |  org.jnp.interfaces.NamingContextFactory
  |  jnp://150.236.80.206:1099
  |  org.jboss.naming:org.jnp.interfaces
  |  
  |  
  |  
  |  
  |  255,0,0
  |   
  |  
  |
  |
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  |  /queue/simpleQueue
  |  NON_PERSISTENT
  |  200
  |  360
  | 
  |  
  |  
  | 
  | 
  |  
  | 
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  |  
  | 
  |  
  | 
  | 
  |  
  | 
  | 
  |  
  |  
  |  
  | 
  |   
  |
  | 
  | 
   
The test runned an hour per SEND JOB so I thought I could see the performance 
after JBM went to 
a steady status and the result was as follow :
   

  | 
  | Execution 1 (provider JBossMessaging)
  | 0. DRAIN JOB drained 0 messages
  | 1. PARALLEL
  |SEND JOB sent 3360753 messages in 3601210 ms with a target rate 1000 
messages/sec, real rate 933.23 messages/sec
  |RECEIVE JOB received 50753 messages in 367 ms with a target rate 0 
messages/sec, real rate 14.1 messages/sec
  | 2. DRAIN JOB drained 2000 messages
  | 3. PARALLEL
  |SEND JOB sent 1550066 messages in 3601180 ms with a target rate 2000 
messages/sec, real rate 430.43 messages/sec
  |RECEIVE JOB received 2276000 messages in 367 ms with a target rate 0 
messages/sec, real rate 632.22 messages/sec
  | 4. DRAIN JOB drained 2000 messages
  | 5. PARALLEL
  |SEND JOB sent 1556184 messages in 3603317 ms with a target rate 3000 
messages/sec, real rate 431.88 messages/sec
  |RECEIVE JOB received 2278000 messages in 361 ms with a target rate 0 
messages/sec, real rate 632.78 messages/sec
  | 6. DRAIN JOB drained 2000 messages
  | 7. PARALLEL
  |SEND JOB sent 1732609 messages in 3601484 ms with a target rate 4000 
messages/sec, real rate 481.08 messages/sec
  |RECEIVE JOB received 2026000 messages in 361 ms with a target rate 0 
messages/sec, real rate 562.78 messages/sec
  | 8. DRAIN JOB drained 2000 messages
  | 9. PARALLEL
  |SEND JOB sent 1601025 messages in 3600575 ms with a target rate 5000 
messages/sec, real rate 444.66 messages/sec
  |RECEIVE JOB received 224 messages in 3600010 ms with a target rate 0 
messages/sec, real rate 622.22 messages/sec
  | 10. DRAIN JOB drained 2000 messages
  | 11. PARALLEL
  | SEND JOB sent 1593108 messages in 3601466 ms with a target rate 6000 
messages/sec, real rate 442.35 messages/sec
  | RECEIVE JOB received 2282000 messages in 361 ms with a target rate 
0 messages/sec, real rate 633.89 messages/sec
  | 12. DRAIN JOB drained 2000 messages
  | 
  | 

So I think the performance under this case was so poor.

And then I run a couple of testes using a config as follow : 


  |  3
  | 
 
and the others parameter were the same as above.
But I got the results which send rate VS receive rate were so unsteady.
for example some time I got a value as follow :


  | 
  | SEND JOB sent 119970 messages in 30002 ms with a target rate 4000 
messages/sec, real rate 3998.73 messages/sec
  | RECEIVE JOB received 322885 messages in 30014 ms with a target rate 0 
messages/sec, real rate 10757.81 messages/sec
  | 
  | 

and some time I got a value as follow :


  | 
  | SEND JOB sent 119978 messages in 30004 ms with a 

[jboss-user] [JBoss Messaging] - Re: Can JBoss Messaging uses direct method invocation while

2008-06-13 Thread gary.c.chen
en, I see, may be the client and the server have the same parent ClassLoader so 
they are in the same ClassLoader. 

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157894#4157894

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157894
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: Can JBoss Messaging uses direct method invocation while

2008-06-12 Thread gary.c.chen
En, could you please tell me  how JBM determine client and server are in the 
same VM ? 
You know, in a Servlet we use JNDI as follow : 

Context ctx = new InitialContext();
QueueConnectionFactory factory = (QueueConnectionFactory) 
ctx.lookup("java:/ConnectionFactory");

and we don't use the JNDI URL property.
I had ever developed Application Server before, in our Application Server, we 
used the JNDI URL property to determine the JNDI lookup action is inside the 
server VM or outside, according to this we return a ConnectionFactory that it's 
created Connection used direct method invocation or used Socket.
So I am very interesting in how JBM achieve the optimisation. Like the above I 
describe ?

And you said the client and the server must in the same VM and loaded by the 
same ClassLoader, so JBM can do the optimisation, is that right ?

And we know that the Servlet class and the JMS Server class are not loaded by 
the same ClassLoader.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157867#4157867

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157867
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Re: Can JBoss Messaging uses direct method invocation while

2008-06-11 Thread gary.c.chen
|-|
|  JVM|
| |
| |---||---|  |
| |   Servlet 1   ||Servlet 2  |  |
| |   ||   |  |
| | |---| || |---| |  |
| | | Sender| || | Receiver  | |  |
| | | Client| || | Client| |  |
| | |---| || |---| |  |
| |   |   ||  /|\  |  |
| |---|---||---|---|  |
| ||  |
| ||  |
| |---||---|  |
| ||  |
|\|/   |  |
||---||
||   ||
||   ||
||JMS Server ||
||   ||
||---||
| |
|-|

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157240#4157240

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157240
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user


[jboss-user] [JBoss Messaging] - Can JBoss Messaging uses direct method invocation while send

2008-06-11 Thread gary.c.chen
I am now using JBoss Messaging as a JMS server in my application and I don't 
use any Cluster feature now and this application is deployed on JBoss AS 
4.2.2.GA. In my application I use JMS API to send messages and receive messages 
in a Servlet, that means the JMS client and JMS server are in the same JVM, as 
shown below :

|---|
|  JVM  |
| |
| |---||---|  |
| |   Servlet 1   ||Servlet 2  |  |
| |   ||   |  |
| | |---|  || |---| |  |
| | | Sender   | || | Receiver | |  |
| | | Client | || | Client | |  |
| | |---| ||  |---| |  |
| |   |  ||  /|\  |  |
| |--|||-|-|  |
| |   |   |
| |   |   |
| |- |  |---|   |
| |  ||
|\|/ ||
||---||
||||
||||
||JMS Server|   |
||||
||---||
|  |
|

I know we can optimize the Send Cilent (or Receive Cilent) and JMS Server not 
to use Socket (TCP/IP) while sending (or receiving) messages in this case, for 
example JBoss MQ uses a JVM connection factory which JNDI name is 
java:/ConnectionFactory to make client JMS API uses direct method invocation 
while sending or receiving messages. 

Could you please tell me if there is any mechanism to achieve the optimize in 
this case ?
And I know there is two connection factories which JNDI name are 
java:/ConnectionFactory and java:/XAConnectionFactory, are them play the same 
role as in JBoss MQ? We just use (look up) these connection factories and then 
we can send or receive messages using direct method invocation and we still 
using the JMS API in the application, is it right ? Or I can use another way ? 
Or the JBoss Messaging client will achieve the optimize automatic when it 
determine the JMS client and the JMS server is in the same JVM ? And how it 
determine ?
I couldn't find my answer from the User Guide.



View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4157239#4157239

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4157239
___
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user