Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

To open the HTTP/2 Client agent configuration dialog from a workflow configuration, you can do either one of the following:

...

Setting

Description

Settings

Use SSL

Select this option to use the SSL.

Security Profile

Insert excerpt
Diameter Stack Agent Configuration
Diameter Stack Agent Configuration
nameSecurityProfileSetting
nopaneltrue

Min Connections Per Destination

Specify the minimum number of connections towards an endpoint (identified by host:port) that the agent will try to maintain. A value of 0 indicates "no minimum". This is not a hard limit as there could be more connections created during the spike in traffic. For more details see Algorithm for Minimum Connections.

Min Connections Per Destination Check Interval (s)

Specify how often you wish to check the established connections. A value of 0 indicates "no check will be performed". After each interval, the agent will try to create additional connections to achieve number set in the Min Connections Per Destination parameter. No connections will be shut down if the current number of connections is greater than the number set in Min Connections Per Destination. For more details, see Algorithm for Minimum Connections.

Default connection concurrent streams

The initial value of concurrent streams that the client would like to handle per connection. The default value is 1000.

Note

Note!

This value may be overridden by any value sent by server.

Max Response Content Length (MB)

Specify the maximum length for response content. The default value is 8MB.

Note

Note!

While it is possible to set this value to infinite, this may lead to an out-of-memory error, potentially causing the EC to crash. 

It is advisable to set the memory size of the EC higher than the anticipated size of the HTTP content the agent will receive. 

Timeout

Request Timeout (sec)

Enter the timeout period in seconds for the request to the HTTP/2 client to wait for a response before timing out.

Queue Settings

Max Requests Queued Per Destination

The size of the message queue in the Jetty server. The default value is 20000.

Note

Note!

Use this property to manage the memory usage. It is recommended that the EC or ECD running the workflow have xmx that is at the minimum (message size X queue size), otherwise there is a risk for out of memory errors.

Retry Interval For full Queues (ms)

A millisecond value to indicate the time it will take for the request to try again when the queue is full.

Max Retries For Full Queue

When the Route Error UDR option is checked, this field will be enabled. This field will indicate how many times the request will attempt to retry before routing it to Error UDR.

Route Error UDR

if this option is selected, the request will attempt to be received by the agent until it reached the maximum amount of retries. Once the threshold is reached, the request will be stored in an Error UDR and sent as an output from the HTTP/2 client agent. If this option is not selected, the request will attempt the retries for an indefinite amount of time, until the workflow is terminated.

Server Monitor

Use HTTP2 Server Monitor

Select this option to monitor the connection status of all servers that the agent has sent requests to. The monitoring is done by sending regular ping messages to the servers. If the servers are not responding, or there are other communication errors, they will be indicated as Unavailable. A list of the Available and Unavailable servers are available in two MIM values: Available Servers and Unreachable Servers.

Ping Interval (s)

Define the ping message interval for the Server Monitor. The time unit is seconds and 10 seconds is default.

...

In case there is a need to run more than one connection towards an endpoint (identified by host:port) irrespective of current traffic, there is an option to configure that using Min Connections Per Destination and Min Connections Per Destination Check Interval(s) parameters.
At the beginning, the agent will try to establish the number of connections set in Min Connections Per Destination and then later try to keep number of open connections for each endpoint. As some connections can be shut down due to any reason, the agent will try to check its status at regular intervals. These check intervals are configured in Min Connections Per Destination Check Interval(s) parameter.

Note

Note!

The connections are used by the agent in Round Robin manner. The agent will never try to close a valid connection.

OpenAPI Tab

...

HTTP/2 Client Agent Configuration - OpenAPI tab

...

Setting

Description

Grant Type

Select the grant type:

  • Client Credentials
    The agent fetches the access token from the Access Token URI during initialization, using client id and client secret for basic authentication. The credentials are base64 encoded and sent in the header of the request.
    The response contains an access token, which is then used in subsequent requests.

  • Resource Owner Password Credentials

    The agent fetches the access token from the Access Token URI during initialization, using the following credentials for authentication:

    • Client ID

    • Client Secret

    • Username

    • Password

    The credentials are sent in the body of the request. The response contains an access token, which is then used in subsequent requests. 

Client ID

Enter the unique client identifier issued by the authorization server.

Client Secret

Enter the client's secret.

Username

Enter the resource owner username, this can be the end-user granting access to a protected resource. This field is required when you have selected Resource Owner Password Credentials from the drop-down list Grant Type.

Password

Enter the password associated with the username. This field is required when you have selected Resource Owner Password Credentials from the drop-down list Grant Type.

Access Token URI

Enter the URI where the access token can be obtained.

Token expiration override (sec)

Enter a time in seconds when you would like to refresh the access token prior to the expiration. This allows the application to obtain a new access token without the user's interaction. 

Additional Parameters

Some authentication servers may require additional parameters in the body of the token requests. To add a parameter, click the Add button and then enter the name of the parameter in the Key field and the value of the parameter in the Value field.

Do not use escape characters in the value field, these will be added automatically by the HTTP2 Client agent. For instance, "https://example.com/" will be sent as "https%3A%2F%2example.com%2F".

Note

Note!

If an agent is configured on the Authentication Tab to use OAuth 2.0, an additional step may be required if the token needs to be obtained via HTTPS protocol.

The HTTP/2 Client internally uses the Java built-in HTTP Client to obtain a token. If a certificate is required to contact the authentication server, the proper certificate has to be put into the default certificates file for the respective JDK distribution used.

Example for OpenJDK 64-Bit Server VM Zulu17.40+19-CA

Code Block
cd $JAVA_HOME/lib/security
keytool -import -alias mycert -keystore cacerts -file oauth2Host.cert

...