Versions Compared

Key

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

To open the HTTP/2 Server 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

Click Browse to select a security profile with certificate and configuration to use, if you prefer to use a secure connection. Refer to Security Profile(4.2) for more information.

Enable 2-way Authentication

If you have selected to use SSL, you can select this option to enable 2-way Authentication. If this option is selected, the Security Profile(4.2) used must be configured using Java Truststore.

Host 

Enter the IP address or hostname that you want the agent to bind to.

Port

Enter the port number you want the agent to bind to.

Request Handling

Default connection concurrent streams

Fundamentally HTTP/2 is designed to make it easy for a client to send multiple parallel requests. Each request is entitled to a thread and if blocking APIs are used, then there are many ways a client can cause that thread to block.

To handle the resource problem this can cause, the setting Default connection concurrent streams can be used.

The setting specifies the maximum number of concurrently open streams allowed per single HTTP/2 connection. The default value uses in Jetty HTTP/2 server is 128. Larger values increase parallelism, but cost a memory commitment.

Route Error to APL

Select this option if you want to route HTTP errors to APL for custom handling. For more information on how to handle the error using APL, refer to Route Error to APL.

Timeout

Client Timeout (sec)

The period in seconds after which the HTTP/2 Server should close the connection if a client is inactive. That is, this is the period of inactivity from when the client has opened the connection or received the last expected response until the server should close the connection. For example, if Client Timeout is set to 6, this means that the server will close the connection if the client is inactive for 6 seconds.

Server Timeout (sec)

The period in seconds before which the HTTP/2 Server has to reply to a request. That is, this is the period within which a server has to process a request and send a response to a client. If the time limit is reached, an error response with a status code of 500 will be sent.

Responses

Default Charset

Select the character set you want to use as default character set. UTF-8 is preselected.

This character set will be used if the character set requested by Accept-Charset is not found in system.

GZIP Compression Level

If gzip is requested, then the response will be be gzipped with the compression level you specify in this field, 1-9.

...

Setting

Description

Enable Overload Protection

Select this option if you want enable overload protection.

Number of Requests

If you have selected enable overload protection, enter the maximum number of requests that are allowed to be sent during the time specified in Average Period (sec). When this number of requests has been reached, further requests will be blocked until the time specified in Wait Duration (sec) has passed, then a retry will be attempted.

Period (sec)

Enter the time period in seconds for which the number of requests should be counted.

Wait Before Retry (sec)

Enter the number of seconds to wait before attempting to retry a request.

OpenAPI Tab

...

HTTP/2 Server Agent Configuration - OpenAPI tab

...

If a proxy server is needed to reach NRF servers please look at HTTP Proxy Setup (4.2) in order to configure the proxy.

...

Setting

Description

Use Token Authentication

Select this option if you want to use token authentication.

Access Token Required

If you have selected Token Authentication, you can select this option if you want the access token to be required.

Public Key

Paste the public key into this field.

Info

Info!

If the Authorization Server is used, the public key should be extracted from the Java Keystore which the Authorization Server is bootstrapped with.

The following are steps to extract the public key:

Code Block
# Convert JKS to PKCS12 format
keytool -importkeystore \
-srckeystore <KEYSTORE_NAME>.jks \
-destkeystore <KEYSTORE_NAME>.p12 \
-srcalias <ALIAS> \
-srcstoretype jks \
-deststoretype pkcs12

# Export certificate from PKCS12 key
openssl pkcs12 -in <KEYSTORE_NAME>.p12 -nokeys -out cert.pem

# Export public key from certificate
openssl x509 -pubkey -noout -in cert.pem -out public_key.pem