Configuring Apache Ignite as a Cache Provider
Apache Ignite is a good low-latency and high-performance caching option for your projects in TIBCO BusinessEvents. You can use Apache Ignite as a cache provider for your projects that use clusters other than the Legacy ActiveSpaces cluster.
To display advanced properties of Apache Ignite cache on the TIBCO BusinessEvents Studio UI, see Enabling Advanced Settings For Apache Ignite and Apache Cassandra.
- Procedure
- Open the project CDD file in TIBCO BusinessEvents Studio, and on the Cluster tab, select Object Management.
-
In the Configuration window, specify the cache as follows:
- From the Object Management Mode list, select Cache.
- From the Cache Provider list, select Apache Ignite.
-
Define the connection settings as follows:
If you have configured Apache Ignite as the cluster provider, you do not need to define the common connection settings. The application uses values for these settings from the cluster provider configuration.Field Description Cache Agent Quorum
Specifies a minimum number (quorum) of storage-enabled nodes that must be active in the cluster when the system starts up before the other agents in the cluster become fully active.
Default value: 1
The inference agent does not start processing events if the number of cache members in the cluster does not satisfy the quorum count.Number of Backup Copies The number of backup copies specifies the number of members of the distributed cache service that hold the backup data for each unit of storage in the cache.
There is no guarantee of no data loss if number of back up copies is set to 0.
Default value: 1
For a backup count of 1 to be effective, you needs at least two cache agents (or storage enable nodes).
Listen Port Port to listen on for discovery of nodes in a cluster.
Communication Port Specify the port or range of ports used by the Ignite Communication SPI. Entity Cache Size (in MB) Specifies the size of the limited cache, in total memory capacity for each object type. The setting is per processing unit. See Configuring a Limited (or Unlimited) Cache.
The default value is
50
MB.Object Table Cache Size (in MB) Specifies the maximum size of the object table cache, in total memory capacity. Used with limited cache only. See "The Role of the Object Table" in TIBCO BusinessEvents Architect’s Guide for more details about the object table. Also see,Configuring a Limited (or Unlimited) Cache.
The default value is
200
MB.Socket Write Timeout Specify the socket write timeout for the TCP connection. Connect Timeout Specify the connection timeout used for establishing connection with remote nodes. Join Timeout Specify the join timeout. If a non-shared IP finder is used and a node fails to connect to any address from the IP finder, the node keeps trying to join within this timeout. If all addresses are unresponsive after the timeout, an exception is thrown and node start up fails. Network Timeout Specify the maximum network timeout for network operations Failure Detection Timeout Specify the failure detection timeout. The failure detection timeout is used to determine how long the communication or discovery SPIs should wait before considering that a remote connection has failed. Enable Hostaware Select the check box to enable the host-aware replication.
By default, the check box is selected.
When host-aware replication is enabled, if the cache nodes are deployed on multiple machines to satisfy replication by the host, then replication does not happen on the same node (or happens only according to the number of hosts available).
If cache nodes within the cluster are on the same machine, then host-aware replication needs to be disabled to honor Number of Backup Copies. When host based replication is disabled then data is replicated on neighbor cache nodes on same machine.
Hostaware Hostname Hostnames that are used in identifying members (and therefore naming Shared nothing file and folders), are generated from underlying OS. If you would like to assign hostnames manually instead, for reasons such as hostname/machine changes, testing so on, then provide hostnames in the CDD by using this field.
You can configure this property at the PU level as well. Configure the propertybe.ignite.hostaware-hostname
with appropriate values to simulate multiple cache agents running on a single machine. -
(Optional) To enable secure Apache Ignite connection among all nodes, use the Security Enabled check box. This option is available when you use FTL as a cluster provider. For Ignite as a cluster provider, a secure connection is established at the cluster level. Select the Security Enabled check box and fill values for the following fields:
Field Description Trusted Folder Path While using secure connection, provide the path to the base folder location containing the trust certificate files. Identity Path to the keystore identity file while using the two-way SSL. Trust Store Password Specify a password for the trust store. - (Optional) When you use Shared Nothing persistence, you can enable encryption for the stored data by using the Enable Storage encryption check box.
- (Optional) If you select the Enable Storage encryption check box, provide the value to the Identity File Path field. The identity file provides a master keystore with type and password.
- Set up the configurations to persist data, see Persistence Options
- Set up how to manage objects for cache or store object management, see Domain Objects Configuration.
- Set up the processing units and agents for the project, see Collections, Agent Classes, and Processing Units.