ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Installation/Configuration Support » NPMCLASS v PERSISTENT

Post new topic  Reply to topic Goto page Previous  1, 2
 NPMCLASS v PERSISTENT « View previous topic :: View next topic » 
Author Message
mvic
PostPosted: Thu May 08, 2008 8:05 am    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

KeeferG wrote:
NPMCLASS allows for messages to survive restart then that covers most failure scenarios for critical messages. The obvious one it doesn't cover is object corruption but using SAN greatly reduces this risk anyway.

Your message only benefits from NPMCLASS(HIGH) when it is sitting on a queue that has that setting. Messages spend time flowing between app and queue. Or between queue and queue (via a channel). These "transitional phases" are the times in which persistent messages are protected better than non persistent ones.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu May 08, 2008 9:10 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7723

Gaya3 wrote:
If there is any mismatch between the sender and reciever NPM attributes
chances of sequence errors are very high.

Not true. The running channel will negotiate what value it should use when both sides are different for a common attribute, like message speed or heart beats. What it ends up choosing is documented in the manuals.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu May 08, 2008 9:12 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9475
Location: US: west coast, almost. Otherwise, enroute.

Quote:
most critical messages are put under syncpoint (or should be for performance)

Syncpoint is related to reliability, not performance.

Quote:
The obvious one it doesn't cover is object corruption but using SAN greatly reduces this risk anyway.

Object corruption is object corruption, whether on a SAN or a local disk.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu May 08, 2008 9:22 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7723

KeeferG wrote:
On a similar vein for LogWriteIntegrity. SINGLE v TRIPLE on a SAN.


You can probably use Single. See this link for a detailed discussion on this and other related topics:

http://www.ibm.com/developerworks/websphere/library/techarticles/0712_dunn/0712_dunn.html

All my channels are NPMSPEED = Normal. We have one app whose performance requirements are so tight that they couldn't tolerate any slowdowns related to channels. We found that the MCAs were writing to disk for their batch info logging even for just non persistent messages. If there was any delay in writing to the SAN, and sometimes there is just for a second or so, it would cause the channel to slowdown for a second. So we made a seperate set of channels for this app and made sure they only send NP messages. DISCINT was set to 4 days to make sure even over a long weekend the channels didn't go to INACTIVE, requiring the overhead of triggering for the first message.

In the lab I started sending tons of NP messages over these fast channels. We then pulled out the fiber cable to the SAN and everything kept flowing! I then dropped one little persistent message and everything stopped flowing, as the channel at that point needed to log the persistent message.

I don't bother with the queue setting. The developers are confused enough already.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
mvic
PostPosted: Thu May 08, 2008 9:31 am    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

bruce2359 wrote:
Syncpoint is related to reliability, not performance.

There is a relationship between persistent put speed and syncpoint options.

Code:
  Put(persistent)(syncpoint)
  Put(persistent)(syncpoint)
  Put(persistent)(syncpoint)
  Put(persistent)(syncpoint)
  Put(persistent)(syncpoint)
  Commit


... can go faster than ...

Code:
  Put(persistent)(no-syncpoint)
  Put(persistent)(no-syncpoint)
  Put(persistent)(no-syncpoint)
  Put(persistent)(no-syncpoint)
  Put(persistent)(no-syncpoint)


... because of optimizations within the queue manager.

What effect syncpoint/no-syncpoint choice has on non-persistent messaging I am not sure.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu May 08, 2008 9:38 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7723

mvic wrote:
... can go faster than ...

WILL go faster. Definitly the way to go if you are trying to eek out every millisecond for persistent messaging.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu May 08, 2008 10:19 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9475
Location: US: west coast, almost. Otherwise, enroute.

I stand corrected.

I should have said syncpoint is more related to reliability than to performance.

Yes, there is overhead (instruction path length) devoted to persistent messages (writing to log buffers), and syncpointing (maintaining pointers to uncomitted messages.

If absolute performance is the issue, look to WMQ on z/OS. Way more more horsepower, way more reliability, way more tuning knobs.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
KeeferG
PostPosted: Fri May 09, 2008 12:08 am    Post subject: Reply with quote

Master

Joined: 15 Oct 2004
Posts: 215
Location: Basingstoke, UK

Cheers guys,

It looks like we may be rebuild our queue managers to get better performing logs to improve persistent performance as the message sizes are quite small and as a result the first 1000 may never get written to disk due to our DefaultQBufferSize. I really can't be bothered in changing the DefaultQBufferSize for each critical queue to ensure messages hit the disk. Not until it is a public parameter of the queue anyway so for now at least we shall look at persistence. In development at least.

As an aside, being a performance person I never like messages on queues. It slows eveything down too much.

_________________
Keith Guttridge
-----------------
Using MQ since 1995
Back to top
View user's profile Send private message Visit poster's website
bruce2359
PostPosted: Fri May 09, 2008 5:49 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9475
Location: US: west coast, almost. Otherwise, enroute.

Quote:
...being a performance person I never like messages on queues. It slows eveything down too much.

Interesting observation. The same can be said for files in a file-system and data in a database.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
mvic
PostPosted: Fri May 09, 2008 5:54 am    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

bruce2359 wrote:
Quote:
...being a performance person I never like messages on queues. It slows eveything down too much.

Interesting observation. The same can be said for files in a file-system and data in a database.

I think KeeferG says this because a non-persistent message is passed more quickly to a waiting getter. A getter that comes along later and has to access the disk for its message gets it delivered a little bit slower than this. Because of the disk access.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Fri May 09, 2008 6:07 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9475
Location: US: west coast, almost. Otherwise, enroute.

Quote:
A getter that comes along later...

When a message (persistent and non-) is mqput to a queue, it first lands in a buffer.

If the getting application is alive and mqgets it, it gets it from the buffer - not disk. For persistent messages, the message might be held in buffer until it can be comitted to the log (log buffer for z/OS). So, yes and no.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
KeeferG
PostPosted: Fri May 09, 2008 6:25 am    Post subject: Reply with quote

Master

Joined: 15 Oct 2004
Posts: 215
Location: Basingstoke, UK

However,

If there is a waiting get process it skips the buffer completly and is passed directly to the waiting get, thus speeding up performance even more.

You can then check to see how many messages avoid the queue and if the ratio is too low, increase the number of waiting threads to improve throughput.

This is a technique that I have had to use on high performance systems for many years.
_________________
Keith Guttridge
-----------------
Using MQ since 1995
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic  Reply to topic Goto page Previous  1, 2 Page 2 of 2

MQSeries.net Forum Index » IBM MQ Installation/Configuration Support » NPMCLASS v PERSISTENT
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.