Salesforce

How to enable message compression between the OpenEdge client and AppServer?

« Go Back

Information

 
TitleHow to enable message compression between the OpenEdge client and AppServer?
URL NameP69169
Article Number000142135
EnvironmentProduct: Progress
Version: 9.1D08, 9.1D09,9.1E
Product: OpenEdge
Version: 10 .x, 11.x
OS: All Supported Platforms
Question/Problem Description
How to enable message compression between the OpenEdge client and AppServer?
Where to specify the -mc parameter to enable compression between client and the AppServer?
Is it required to specify -mc in the AppServer startup parameters to enable compression?
Are all network traffic messages compressed?
What is the -mc startup parameter?
 
Steps to Reproduce
Clarifying Information

 
Error Message
Defect Number
Enhancement Number
Cause
Resolution
Network Message Compression -mc

In order to decrease the traffic between the Progress client and AppServer, the Network Message Compression -mc client parameter allows the message between the client and the AppServer to be compressed. 

The message compression startup parameter, -mc, should be set only for Progress clients talking to compatible AppServers:
  • The -mc startup parameter is used to enable message compression between OpenEdge clients and compatible AppServers configured for either the State-Reset, State-Aware or Stateless operating modes.
  • Even though both AppServer and client needs to be prepared to handle message compression, compression is driven by the client.  Compression will be disabled when clients that turn on message compression connect to AppServers that do not have this capability.
  • There is a minimum size under which no compression occurs. The threshold is set to 256 bytes. Only the messages whose length is lower than 256 bytes are not compressed
  • Specifying the -mc startup parameter will cause that the AppServer agent (producer) serving the request for the remote procedure execution to use the zlib library compression algorithm to compress the messages transmitted to the client (consumer)
  • It is not necessary to set it in the AppServer's startup parameters, unless the AppServer agent connects to another AppServer as a client and compression is required.
  • If connecting from one AppServer agent to another, to use message compression the -mc parameter would be required in the startup parameters of the AppServer that is initiating the connection with the second AppServer.
  • While the -mc startup parameter was first available starting with Progress 9.1D08, it is advisable to use the -mc parameter on clients with Progress 9.1E02, OpenEdge 10.0B03 Service Packs, 10.1A or later. For further information refer to Article 
    -mc causes error 8127 on the AppServer broker and application hangs   
  • The .NET Open Client supports the -mc startup parameter since OpenEdge 10.2A03, 10.2B01 Service Packs.
     Can I use compression with .NET Open Client based applications?  
  • The amount of data transmitted from the client can be significantly reduced by using the -mc option which causes the AppServer (producer) to compress the messages transmitted to the client (consumer).  While Message compression can improve message throughput by reducing network overhead within the lower communication layers on slower topologies, such as dial-up and WAN configurations,proceed with caution on faster, more optimized networks where network performance is higher. The high per-packet processing cost of enabling compression can increase network latency as it improves throughput. The net result could degrade the overall performance of the application.

 
Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:03 AM

Powered by