- Backup ConnectURLs
- Connection ClientID
- Disable Ping
This chapter explains the parameters that can be configured at the Connection Factory level. Each connection that is created to the FioranoMQ Server using the connection factory inherits the parameters that are configured for the connection factory.
For information on how to create and configure Connection Factories in FioranoMQ using Studio, refer to section 25.2 Working with Connection Factories of FioranoMQ Handbook.
Boolean used to enable/disable shut down hook in the client.
Enabling this parameter ensures that the program exits normally when the non-daemon thread exits or when the exit method is invoked. This also makes sure that connections and sockets are closed properly when the virtual machine is terminated in response User interruption such as typing ^C or a system-wide event such as User log off or system shutdown.
- yes - enables shutdown hook.
- no - disables shutdown hook. This is the default value.
- none - uses the default value that is set in the Server.
- No - disables shutdown hook.
By default the shut down hook is disabled in client applications.
AllowDurableConnections is the boolean value that is used to disable or enable durable connections for a particular client when the durable connections are enabled on the Server. When AllowDurableConnections is enabled, messages get stored into the Client Side Persistence (CSP) storage during the period that connection with the Server is down.
The parameter below is used to set the durable connections to true/false in a client.
The value set in the Connection Factory is overridden by the value set in the client application. The parameter below can also be set in the client application:
Here, env is a hashtable used to create the InitialContext which stores all the JNDI parameters.
- yes - enables durable connections in the client This is the default value.
- no - disables durable connections in the client.
- none – uses the default value that is set in the Server.
- yes - enables durable connections in the client.
Dependencies: This parameter is used for client side configuration.
If durable connections are disabled in the Server and enabled in client this disables all durable connections. If durable connections are enabled in the Server, their effect is dependent on the client configuration.
AutoDispatchConnections is the boolean value that is used to determine whether the dispatcher Server should be used for creating client connections. By default this flag is enabled. If set to true, the incoming client connections are automatically redirected to the least loaded Server that is registered to the dispatcher. If set to false, connections are created on the dispatcher without being redirected.
- yes - enables automatic dispatching of the connection.
- no - disables automatic dispatching of the connection.
Dependencies: This parameter affects only the Dispatcher Server.
Backup ConnectURLS are URLs of the Backup Servers that are used in case the Primary Server is down. Multiple backup URLs may be used but need to be separated by the use of semicolons.
Example: Backup Connect URLs can be specified as:
BatchTimeoutInterval is the time interval after which a batch of non-persistent messages will be sent irrespective of the size of the buffer.
Non-persistent messages are sent in batches to the Server. These batches are sent to the server when the batch size exceeds a particular size [default 32 bytes] or for the time specified by batchTimeoutInterval.
- Valid values: Time is specified in milliseconds. The default time is 1000 millisecondss.
BatchingEnabled enables message batching algorithm in the client runtimes.
If batching is enabled, non-persistent messages are sent in groups to the server which results in higher message rates. Batching has no effect on persistent messages.
- true: enables batching. This is the default value.
- false: disables batching.
Default value: true
Defines the behaviour of publisher when auto-revalidation is enabled on the server and when PublishBehaviourInAutoRevalidation is set to Block.It signifies the time interval to sleep on each retry attempts, that is, the value specified in MaxBlockPublisherRetryAttempts.
- Valid value: Time in milliseconds. The default value is set to 1 second.
ClientProxyURL parameter holds the configuration information of the client proxy provider forhttp tunneling.
- String - value that contains information about the proxy provider.
CompressionManager implementation is used for compressing messages. The Compression Manager specified is the implementation of the fiorano.jms.services.msg.compression.ICompressionManager interface provided by FioranoMQ.
- Valid value: Class path of the implemented Compression Manager Set as the default value: fiorano.jms.services.msg.compression.def.CompressionManagerImpl
Connection ClientID is used for all the connections that are created using this connection factory.
- String value
Dependencies: This parameter depends on EnsureUniquenessOfClientID of FioranoMQ->Fiorano->etc->FMQConfigLoader. If EnsureUniquenessOfClientID is set to true, no two connections can have the same clientID. Setting the ConnectionClientID will throw exceptions when more than one connection is created with the Connection Factory.
CreateLocalSocket parameter is used when both the Client and the Server share the same machine.
If set to true a socket is created when the client connects to the Server. If set to false no socket is created when local connections are made.
- yes - creates a local socket.
- no - does not create a local socket. This is the default value.
Default Value: no
Disable Ping is the boolean value used to disable pinging for a particular client when pinging is enabled on the server.
If ping is enabled, the client will ping the Server for every PING_INTERVAL seconds which are, by default, set to 60 seconds. If a reply is not received from the Server, the client will re-validate the connection.
- yes - pinging is disabled on the client-side.
- no - pinging is enabled on the client-side. This is the default value.
- none - the default value is used.
DisableSendingCSPStoredMessages is the boolean value that is used to disable sending pending messages stored in the CSP to the Server.
When a connection with particular clientID is interrupted and if Durable Connections are enabled, messages will be stored in the local cache under the clientID of the connection. If this flag is enabled, these messages will not be sent in the setClientID () call.
- true - yes - disables sending messages stored in the CSP when the client ID is set.
- False - no - enables sending messages stored in the CSP when the client ID is not set.
This parameter is set when the messages stored in the CSP are NOT to be sent once a connection is re-established with the Server.
Example: The Server is started with the durable connection enabled. A publisher and a subscriber are started. The publisher has the DONT_SEND_PREVIOUSLY_STORED_MESSAGES flag set to true. The server is shutdown. The publisher publishes a few messages and is shutdown as well. The server and the publisher are restarted. The subscriber does not receive the messages sent by the publisher while the Server was down.
DurableConnectionsReconnectInterval is the time interval between two re-connection attempts. When a client is disconnected from the Server with auto revalidation enabled, the client repeatedly tries to reconnect to the Server in the form of a loop. The time between each successive try is set using this flag.
- Valid value: This value is set in Milliseconds. The default time interval is 1000 millisecondss.
When durable connections are enabled and the Server goes down, client-side messages are stored on the local disk while the connection is revalidated. The DurableConnectionsBaseDir parameter specifies the name of the base directory where messages will persisted.
- Valid value: Any string value that may be considered a directory name.
The default value is set to cspCache. Messages persist in the directory cspCache if no othervariable set.
EnableAutoRevalidation is the boolean value that is used to disable auto-revalidation for a particular client. By enabling auto revalidation a client attempts to reconnect to the Server when the Server is down.
- yes - enables auto revalidation for the client. This is the default value.
- no - disables auto revalidation for the client.
The default value is set to enabled.
Revalidation is occurred by the client only when auto revalidation is enabled on the Server. Revalidation by the client does not occur if auto revalidation is disabled on the Server and enabled in the Connection Factory parameter.
The Server value takes precedence over the Connection Factory parameter or the parameter set by the client.
EnableLMS is the boolean value that is used to enable/disable Large Message Support (LMS).
- yes - enables LMS on the client-side. This is thedefault value.
- no - disables LMS on the client-side.
Dependencies: UseFioranoCbr flag should be set to no for LMS to work. LMS does not work if AllowDurableConnections is set to TRUE. LMS does not work in the case of HA.
The HTTPProxyURL parameter holds the configuration information of the HTTP proxy provider.
- Valid value: A String value containing information about the proxy provider:
- Example: http://ProxyServer:80
Sets the value of USE_THREAD_CONTEXT_CLASS_LOADER.
- Valid values: yes/no/none
Java.naming.security.protocol is the name of the security protocol used to create secure connections with the FioranoMQ Server.
- Valid value: The possible values that this variable can take are PHAOS_SSL and SUN_SSL.
LookupPreferredServer is the boolean value that is used to instruct the client to connect to the preferred Server. When this parameter is enabled, clients connecting to the Dispatcher are redirected to the Server that is set as the preferred Server. If this parameter is disabled, clients will be connected to the least loaded Server.
- yes - enables Lookup Preferred Server
- no - disables Lookup Preferred Server
Dependencies: This parameter is used only by a Dispatcher Server.
The MaxAdminConnectionReconnectAttempts are the maximum number of reconnect attempts that will be made by the Admin Connection to connect to the Server when the Server is down.
- Valid value: Any positive integer value. By default, this parameter is set to -1. (Infinite attempts.)
Defines the behaviour of publisher when auto-revalidation is enabled on the server and when PublishBehaviourInAutoRevalidation is set to Block.It signifies the number of retry attempts to make when server is in transition state i.e STANDALONE state and then to ACTIVE TRANSITION to ACTIVE.
- Valid value: Any positive integer value. Default value is 10.
MaxDurableConnectionReconnectAttempts are the maximum number of reconnect attempts that the client will make if it is unable to connect to the Server when the Server is down.
- Valid value: Any positive integer value. By default, this parameter is set to -1. (Infinite attempts.)
MaxSocketCreationTries are the maximum number of attempts that the client will make to create a socket connection on a Server when it is unable to connect to the Server. If it fails to connect within the specified number of attempts an exception is thrown on the client-side.
- Valid value: Any positive integer value. By default, this value is 1.
ProxyAuthenticationRealm holds the address of the Authentication Realm being used on the proxy Server through which HTTP based connections created using the ConnectionFactory are routed.
- Valid value: String representing the address of the proxy Server on which the Authentication Realm exists.
- Dependencies: This property is used only when the Transport Protocol is set to HTTP.
ProxyCredentials is the password of the proxy principal which is used when the proxy Server is used.
ProxyPrincipal is the name of the proxy principal used when the proxy is used.
Sets the type (name) of the proxy being used for the HTTP based connections created using the ConnectionFactory. This property is used only when the Transport Protocol is set to HTTP.
PublishBehaviousinAutoRevalidation parameter defines the behavior of the publisher when the auto revalidation is enabled and the durable connections are disabled in the Server. A new publish call will either throw an exception, or block or ignore a message. By default the value of this parameter is - throw exception.
- 0 – Exception - Throws an exception upon publishing messages. This happens when the Server is down, auto revalidation is enabled but durable connections are disabled.
- 1 - Ignore - Ignores further publish message calls. All messages sent when the server is not up will be lost. (The same conditions as above.)
- 2 – Block - Blocks further messages from being published until auto revalidation is performed. (The same conditions as above.)
- Usage: This parameter is used to prevent exceptions from being thrown when messages are sent during auto revalidation undertaken when durable connections disabled. The User may either choose to ignore the messages sent till auto revalidation is done or the User may prevent sending messages till auto revalidation is complete.
- Example: If the FioranoMQ Server is used for real-time trading, old messages cannot be used. If the Server is down the publisher should not send any messages as these will be sent once the Server is up and running. The flag should, therefore, be set to 2 which blocks the publisher from sending messages when connection with the server is down.
- Dependencies: If these parameters are present in the client then EnableAutoRevalidation must be set to true and AllowDurableConnections must be set to false.
When the Server is disconnected, messages are stored in the CSP on the local machine. When the Server is reconnected, messages stored in the CSP are sent to the Server while current messages are being stored in the CSP with some wait-time. The publish call waits for CSPSyncup time specified by the PublishWaitDuringCSPSyncup parameter until the CSP messages are sent to the Server. After all CSP messages are sent, the publisher sends messages normally without any delay time.
- Valid value: Time is specified in milliseconds. The default value is 1000 milliseconds.
The SecurityManager implementation is used to create secure connections [HTTPS or SSL] with the FioranoMQ Server. This manager should be an implementation of the fiorano.jms.runtime.IFMQSecurityManager interface provided by FioranoMQ.
- Valid value: Class path to the security Manager class.
The ServerProxyURL parameter holds the URL for the Server proxy through which TCP based Connections will be routed using HTTP Tunneling.
- Valid value: String value that contains information about the proxy provider.
- Example: http://ClientProxyServer:80
- Dependencies: This URL will be used only when the Transport Protocol is set to TCP.
SleepBetweenSocketCreationTries is the time interval between two socket creation attempts. While creating a connection to the server, client RTL creates sockets on the Server. If the Server is unavailable at that time, RTL tries to create a socket for as many times as specified in the parameter – MaxSocketCreationTries. Between successive tries the RTL waits for the time specified in this parameter.
- Valid value: Time is specified in milliseconds. The default sleep time is 200 milliseconds.
Once the property is set to true, packets are sent to the remote system when no data is being exchanged to keep the connection active. This is handled by the TCP layer itself.
By default, this value is off.
SocketTimeout is the time interval after which the socket calls a timeout. Timeout is when the flow of execution is stopped if still awaiting a reply from the socket. If the connection to the Server is lost, applications hang onto the socket for the maximum time set by this parameter.
- Valid value: Time is specified in milliseconds. The default timeout value is set to four minutes.
Sets the URL for the SOCKS Proxy through which HTTP based connections are routed.
- Dependencies: This URL will be used only when the Transport Protocol is set to HTTP.
Non-persistent messages are sent to the Server in batches. The TCPBatchSize parameter determines the size of the batch. If the message batch size exceeds the size determined, the batch is sent to the Server or the messages are stored in a buffer.
- Valid value: The size is specified in bytes. The default value is 32KB
- Dependencies: Batching should be enabled if this parameter is to be used. If BatchTimeoutInterval completes before the message batch size, then messages are sent to the Server irrespective of the batch size.
Protocol used for communicating with the Server.
- Valid value: Transport protocol can be set to either TCP or HTTP.
The UseFioranoCbr parameter enables/disables Content Based Routing (CBR). CBR allows XPath based selection on messages with XML content. For more information please refer to chapter 18: FioranoMQ Content Based Routing available in the FioranoMQ Concept Guide.
- yes - enables Fiorano CBR.
- no - disables FioranoCBR.
UpdateConnectURL is the boolean value that is used to specify whether a ‘connect URL’ of the connection factory should be updated when the Server restarts.
- yes - updates the connectURL
- no - does not update the connectURL
By default this value is false.
UseLocalProcedureCalls is the boolean value used to enable/disable Local Procedure Calls (LPC). If this parameter is enabled then clients within the server using the Connection Factory will connect to the Server directly, without making any socket connections.
- yes - enables LPC.
- no - disables LPC. This is the default value. .
By default, LPC is disabled.
By default, FioranoMQ uses two sockets per connection. One socket is used for sending requests and another for receiving messages. This property allows the User to use the same socket for, both, send and receive operations.
- yes - uses a single socket for send and receive.
- no - uses two socket for send and receive.
By default, this is true.
Time interval after which the socket call will timeout in the XA enabled Server.
- Valid value: Time is specified in milliseconds. The default timeout value is set to ten minutes.