Gateway Proxy Connection Properties
The Gateway Proxy must be configured to connect to the MATRIXX Engine. Configure these properties in the gateway_proxy.yaml file.
Gateway Proxy Connection Properties lists the properties that you use to connect the Gateway Proxy to the MATRIXX Engine.
Property | Description |
---|---|
authPort | When set to port 4080, initializes the Gateway Proxy to require client authentication. Clients connecting to the Gateway Proxy must provide a login ID and password. This is the default
port. Note: A sample Java program,
sample_java_client-5000.jar,
demonstrates how to create a Java program that uses
authentication mode. For more information about the sample Java
programs, see the discussion about creating a Java client
application in MATRIXX Subscriber Management API.
|
nonAuthPort | When set to port 4070, initializes the Gateway Proxy without requiring client authentication. |
engineCount | The number of Traffic Routing Agents in sub-domain routing/site independence/disaster recovery mode
(TRA-RT-(SI/DR))s to connect to, to communicate with corresponding engines. The Gateway Proxy can
communicate with multiple TRA-RT-(SI/DR)s. In a distributed environment set up for high availability (HA), the value should be 2 or 3, depending on the number of sites,
with one TRA-RT-(SI/DR) per site. When the Gateway Proxy receives a message from a client, it
finds the highest priority (lowest number) TRA-RT/DR for the engine that is ACTIVE and sends the message to it. If the send fails, after the configured
The Gateway Proxy actively monitors all engines. It opens a connection pool to any newly active engine and removes the connection pool from an engine if it fails. For information about engine configuration, see the discussions about configuring MATRIXX using Helm and configuration input settings. |
snmpAgentAddress | The SNMP IP address and port. For example: 0.0.0.0/5700 |
prometheusPort | The port for Prometheus metrics. |
prometheusApplication | For example, gateway-proxy . |
reconnectSleep | The number of milliseconds to wait after a connection is lost before trying to make a new connection. |
threads | The number of IO listener threads for incoming connections to the Gateway Proxy service. If you do not specify a value, the value is set to 512 threads for unlimited threads. |
The following information must be configured for each engine in
the environment. This applies to system properties that are used to
override the configuration. In the
gateway_proxy.yaml configuration file,
configure a list of engines under the engine:
key. |
|
active | Specifies whether the engine is active or not. Values are true or
false . |
domainId | Set to the domain for which this Gateway Proxy instance should service requests. You can specify the number,
such as domainId: 2 or you can use the TRA routing
term domainId: DMID2 .The Gateway Proxy uses this information to determine all sub-domains that are part of the specified domain. |
routeId | For MATRIXX version 5240 and later, do not set this value. |
host | The VIP address of the application-layer Traffic Routing Agent (TRA-RT-(SI/DR)). |
idleTime | The number of milliseconds to allow the connection (thread) to the engine to be idle.
If the engine is idle in the pool for more than the idle time, it is
closed. For test environments, where the engine is stopped and
started frequently, the idleTime might be set to
20,000 to 30,000 milliseconds. For production environments, the
values should be 2–10 times higher than this values. |
port | The MATRIXX Engine port to connect to. |
retryOnOtherEngines | Controls whether the Gateway Proxy retries requests on additional engines if more than one engine exists and a failure to communicate with the current engine occurs. The out-of-the-box-value is false. |
threads | The number of concurrent connections allowed to MATRIXX Engine. |
timeBetweenTests | The number of milliseconds to wait before checking to see if a connection the engine
has failed. This controls the interval between checks. For test
environments, where the engine is stopped and started often, the
timeBetweenTests value set to 5,000–10,000
milliseconds. For production environments, the values should be 2–10
times higher than this value. |
timeout | The number of milliseconds to wait before assuming an error occurred and closing the connection. This is provided for failover capabilities when a disaster recovery operation is in
progress. After the timeout period, the Gateway Proxy automatically connects to the next engine
in the series if one is configured. The default setting for this property is 1000 ms. In deployments where there are few or no multi-request MATRIXX Data Containers (MDCs), where there is no sub-domain routing, and where the Gateway Proxy is connecting directly to an engine, this default value may be enough. In other deployments this value should be examined and the timeout increased to 5000 ms or even 10000–15000 ms. |
# Port for intializing gateway proxy in in auth mode
authPort: 4080
nonAuthPort: 4070
# Number of IO listener threads for incoming connections
threads: 16
# how long to sleep after a connection goes away before trying a new connection
reconnectSleep: 1000
# How many engines should I connect to. These connections are cycled through one
# at a time. When a connection fails, an attempt to connect to the next known
# engine is made
engineCount: 2
# snmpAgentAddress: 0.0.0.0/5700
# Prometheus Metrics
prometheusPort: 5705
prometheusApplication: gateway-proxy
# this setting controls whether gateway proxy will retry requests on additional
# engines if more than one engine exists and a failure to communicate with the
# current engine occurs. The default value for this property is "false". This
# is a change in behavior introduced in release 5220. You must explicitly set this
# property to "true" if you want to reenable this retry capability
retryOnOtherEngines: false
# Engine configuration. One section per known engine
# host: the host name or address of the engine
# port: the socket port of the engine
# schemaVersion the MATRIXX engine schema version number
# extensionVersion the service provider schema version
# threads: number of allowed concurrent connections to the engine
# timeout: ms. to wait for a request to complete
# idleTime: ms. an engine connection can sit in the pool idle
# timeBetweenTests: ms. between runs of the thread that will evict idle engine connections
# active: "true" or "false" whether the engine is active or not
# Engine Connection
engine:
# engine [0]
- active: "true"
host: 10.10.176.54
idleTime: 60000
port: 4060
threads: 16
timeBetweenTests: 15000
timeout: 5000
domainId: DMID1
routeId: DMID1
# engine [1]
- active: "true"
host: 10.10.176.55
idleTime: 60000
port: 4060
threads: 16
timeBetweenTests: 15000
timeout: 5000
domainId: DMID1
routeId: DMID1