Connectivity configuration properties

Configure your solution connectivity in the server.xml file of your runtime servers.

Catalog server endpoint configuration

In the server.xml file of your runtime servers, you must specify the ia_connectivity entry to configure an inbound or outbound server to connect to the cluster.

Note: The ia_connectivity element is not required when the inbound or outbound connectivity feature is configured in a runtime server. For example, the ia_connectivity is not required in a single-server development environment such as the cisDev server.

The following ia_connectivity element configures the inbound or outbound connectivity server to connect to the cluster using the catalog servers that have the host names catalogHost01 and catalogHost02, and that are both listening on port 2809.

<ia_connectivity catalogServerEndpoint="catalogHost01:2809,catalogHost02:2809" />

You can specify the following properties in the ia_connectivity entry:

Table 1. Connectivity configuration properties
Property Default value Description
catalogServerEndpoint By default, a local connection is used. The catalogServerEndpoint is a list of the bootstrap endpoints of the catalog servers, which are separated by commas. Each endpoint is specified using a host name and a port, for example: host1:2809.
serverName If you do not set the serverName property, a default value is generated based on your IP address. If you enter a serverName value, ensure that the value is a unique name. The serverName property is a unique name for the connectivity server, for example: host1-cisInbound. This property is used to identify the server in the server log messages.

HTTP outbound endpoint configuration

You must specify an ia_outboundHttpEndpoint entry in each server that handles the endpoint. The entry for an outbound HTTP endpoint must take the following format:

<ia_outboundHttpEndpoint endpoint="solution_name/endpoint_name"/>

You can specify the following properties in the ia_outboundHttpEndpoint entry:

Table 2. HTTP outbound endpoint configuration
Property Default value Description
endpoint Not applicable

The solution name and endpoint name to which this configuration applies. The value you specify must be in the following format:

solution_name/endpoint_name

You can terminate the value in a * wildcard character, to match multiple endpoints of a solution, or to match all the endpoints of multiple solutions. The endpoint property is mandatory.

url If you do not set this property, the outbound event is sent to the URL specified in the outbound HTTP endpoint definition. The URL where the outbound event is sent, in the form of a message, either over HTTP or HTTPS.
user If you do not set this property, user authentication information is not sent. The user ID that is sent to the external HTTP server, during basic authentication.
password Not applicable The authentication password that is sent to the external HTTP server. The password is sent together with user ID specified in the user property. If required, you can encode the value with the securityUtil tool for extra security.

If you specify an advanced property in the server configuration, the value overrides the equivalent value in the solution connectivity definition (.cdef) file.

Table 3. HTTP outbound endpoint advanced properties
Property Default value Description
http.connection.timeout 10000 The HTTP connection wait timeout period, in milliseconds. This is the elapsed time after which an attempted connection to the external HTTP server is abandoned. A value 0 indicates an infinite period.
http.socket.timeout 10000 The HTTP socket wait timeout period, in milliseconds. A value 0 indicates an infinite period.
http.ssl.config If you do not set this property, the default SSL configuration is used. The name of the SSL configuration used for outbound HTTPS connections.

JMS outbound endpoint configuration

You must specify an ia_outboundJmsEndpoint entry in each server that handles the endpoint. The entry for an outbound JMS endpoint must take the following format:

<ia_outboundJmsEndpoint endpoint="solution_name/endpoint_name"/>

You can specify the following properties in the ia_outboundJmsEndpoint entry:

Table 4. JMS connection properties
Property Default value Description
endpoint Not applicable

The solution name and endpoint name to which this configuration applies. The value you specify must be in the following format:

solution_name/endpoint_name

You can terminate the value in a * wildcard character, to match multiple endpoints of a solution, or to match all the endpoints of multiple solutions. The endpoint property is mandatory.

If you specify an advanced property in the server configuration, the value overrides the equivalent value in the solution connectivity definition (.cdef) file.

Table 5. JMS outbound endpoint advanced properties
Property Default Description
jms.bytes.message false If you set this property to true, a JMS BytesMessage is used to carry the event message. Otherwise, a TextMessage is used.
jms.persistent.delivery true If you set this property to true, the DeliveryMode set on the JMS message producer is PERSISTENT. Otherwise, the DeliveryMode is NON_PERSISTENT.

Advanced buffer properties for outbound endpoints

You can specify advanced properties that control the buffer that is used to hold messages to be delivered to an outbound endpoint. If required, the advanced buffer properties must be specified in the outbound HTTP or JMS endpoint connectivity definition (.cdef) file in your solution. The advanced buffer properties cannot be specified in the connectivity server configuration.

Table 6. Advanced buffer properties for both HTTP and JMS outbound endpoints
Property Default value Description
buffer.max.pending.event.count The default value is 1000. The maximum number of events that can be contained in the buffer in an individual partition of the grid. If an agent emits an event to be delivered to the endpoint and this limit is reached in the local partition, the agent transaction is rolled back.
buffer.event.time.to.live The default value is the number of seconds that is specified in the discarding messages clause in the outbound endpoint definition. If the outbound endpoint does not contain a discarding messages clause, then the default value is 0. The maximum life time of an event that is contained in the buffer, in seconds. If the event delivery does not complete within this life time, the event is discarded. A value 0 indicates an unlimited period.

Advanced thread pool properties for outbound endpoints

You can specify advanced properties that control the outbound connectivity threads that deliver messages that are contained in an outbound endpoint buffer to their final destination. You can specify advanced properties in the ia_outboundHttpEndpoint or ia_outboundJmsEndpoint entries in the server configuration. If you specify an advanced thread pool property in the connectivity server configuration, the value overrides the equivalent value in the .cdef file.

Table 7. Advanced thread pool properties for HTTP and JMS outbound endpoints
Property Default value Description
thread.pool.size The default value is 5. The maximum number of threads that the connectivity server can use to deliver messages for this endpoint.
thread.min.retry.delay The default value is 1. The minimum amount of time a thread can wait after a failure before it attempts to deliver another message, in milliseconds.
thread.max.retry.delay The default value is computed based on the number of seconds that are specified in the discarding messages clause in the outbound endpoint definition. If the outbound endpoint definition does not contain a discarding messages clause, then the default value is 10000. The maximum amount of time a thread can wait after a failure before it attempts to deliver another message, in milliseconds.
thread.retry.count.before.discard The default value is -1. The minimum number of times a delivery failure is reattempted. If the messages are not delivered after the specified number of reattempts, it is discarded.
  • 0 specifies that the message is discarded immediately.
  • -1 specifies that the message is never discarded after a delivery failure.