Print this page

MQ Channel compression can reduce the amount of data sent across networks, improving performance (with a potential increase in processor usage).  Message data can be compressed using run-length encoding (RLE) or the zlib compression technique.

MQ provides options to specify whether header data is to be compressed (COMPHDR) and/or message data is to be compressed (COMPMSG).  On the sending channel (SDR, SVR, CLUSSDR and CLNTCONN), a list of supported compression techniques is supplied, supplied in COMPHDR and/or COMPMSG.  This is matched against techniques supported on the receiving channel  (RCVR, RQSTR and SVRCONN).  If the sending and receiving channels do not have any corresponding compression techniques, compression will not be performed.

Permitted values for COMPMSG are:

  • RLE - Run length encoding.  RLE compression is recommended for data with repeated characters, but isn't suited to XML or standard text.
  • ZLIBHIGH - zlib compression, with a preferrence for a high level of compression.
  • ZLIBFAST - zlib compression, with a preferrence for fast compression.
  • ANY - any technique supported by the queue manager (only permitted on receiving channels).
  • NONE - Don't compress (default value).

Permitted values for COMPHDR are either to use SYSTEM compression or NONE.

The default compression technique and technique used for the last message can be viewed with DISPLAY CHSTATUS (e.g. if DISPLAY CHSTATUS COMPMSG returns 'COMPMSG(RLE, NONE)', the default is RLE and NONE was last used).  In addition, the compression rate and time can be viewed (e.g. DISPLAY CHSTATUS COMPTIME) providing that monitoring is enabled for the channel.