Relay Server version 17.0 introduces several new, changed, deprecated, or removed features.
Deprecated features will be removed in future versions. Alter your applications to use recommended feature replacements instead of relying on deprecated features.
Check the readme.txt file for additional information about the software, including feature information that was added after the documentation was completed.
Several enhancements have been made to improve performance:
The Relay Server now supports the WebSocket protocol for Apache and Microsoft IIS 8 (earlier versions of IIS do not support WebSocket traffic). Applications that support the WebSocket protocol use it automatically. Otherwise, the Relay Server uses HTTP.
The Outbound Enabler now uses junction pools to send requests to and from the Relay Server and for dedicated backend connections. The rsoe2 utility supports the following options to control the size of the junction pool: -jsl, -jsh, and -jl. See Relay Server Outbound Enabler syntax.
There is a new setup script for deploying Relay Server to Microsoft Windows (iis7_plus_setup.bat). See Deploying the Relay Server components to Microsoft Windows Server.
You can now run Relay Server on Microsoft IIS 8.5.
The thread pool for the Relay Server on Microsoft IIS is now self governed. You can use the default web garden size of 1 and use the min_thread and max_thread properties in the Options section of the Relay Server configuration file to control the Relay Server thread pool. See Configuring a Relay Server.
Relay Server supports configuring and running two Apache server instances. One instance of the Apache server is client facing and only services client requests. The other instance is server facing and only services Outbound Enabler requests. Running Apache Relay Server in this configuration provides better scalability in large deployments.
Limit the size of the Relay Server log file by using the log_size_limit option in the Options section of the Relay Server configuration file. See Configuring a Relay Server.
On Microsoft IIS, the Relay Server now continuously monitors the configuration file and reports changes in status in the log file.
The new auto_config option instructs the Relay Server to automatically configure the backend farm and backend server. This feature is only available on Windows. See Configuring the Relay Server automatically.
The version 17 Relay Server does not work with version 16 and earlier of the Outbound Enabler. As well, version 17 of the Outbound Enabler does not work with version 16 and earlier of the Relay Server.
For HTTPS connections, you must now specify at least one of certificate_name, certificate_company, or certificate_unit to ensure that the Outbound Enabler is connecting to the correct backend server. To prevent checking the certificate, specify the skip_certificate_name_check option.
The -cs status_url option has been removed.
The utility has been renamed rsoe2.
When you connect the Outbound Enabler to the backend server using TLS or HTTPS, specify at least one of the following protocol options: certificate_name, certificate_company, or certificate_unit. The Outbound Enabler checks these values against the backend server certificate to ensure that it is connecting to the correct backend server. To prevent this checking, set the new skip_certificate_name_check protocol option to true.
ianywhere.ml.rs.AdminChannel has been renamed com.sap.relayserver.AdminChannel.
See Remote administration using AdminChannel (Microsoft Windows).
The SQL Anywhere Server Monitor no longer supports Relay Server. Only the status page is supported
Old file name |
New file name |
---|---|
rs-setup.bat |
iis7_plus_setup.bat |
rsoesuppXX |
This file has been removed |
rsoe.exe |
rsoe2.exe |
ianywhere.ml.rs Java package qualifier |
com.sap.relayserver |
rs_admin.dll, rs_client.dll,rs_monitor.dll, and rs_server.dll |
rs.dll (all combined into a single DLL) |
The Relay Server and the Outbound Enabler no longer time out client traffic according to the IAS-RS-App-Timeout-Minute header. Instead, the timeout behavior is controlled by the client, other intermediaries, the backend server, and the web server that contains the Relay Server. The default 8 minute timeout for IAS-RS-App-Timeout-Minute no longer applies.
The end of the Relay Server record no longer ends with
<processId.threadId.F(BEFarmIdx)B(BEServerIdx)S(BESessionNum)R(RequestIdx)>
It now ends with
<label: J{relayserver-host#backend-farm-name#backend-server-name#junction-index} R{request-number}>
Run Relay Server on Microsoft IIS version 7.0 or later. Support for version 6.0 has been removed.
The Relay Server now starts on demand when the web service is running. Shutting down the web service also shuts down the Relay Server. As a result of this change, the Relay Server for Microsoft IIS no longer runs on shared memory, and it now uses a single application pool with a web garden size of one.
The rshost service is no longer available to administer Relay Server on Windows, and the dbsvc -t RSHOST option has been removed. On Windows, rshost is only available for internal state management. For Windows, use the AdminChannel class in rstool.jar to administer Relay Server locally and remotely. You can still use rshost on Linux.
As well, the Relay Server logs information to the following locations:
Log file |
Location |
---|---|
Configuration file log |
Relay-Server-DLL-directory/rs.config |
Relay Server log |
Relay-Server-DLL-directory/Log/rs.log |
The Relay Server plug-in for SQL Central has been removed. Edit the Relay Server configuration file to change your Relay Server configuration.
Property type | Property | Notes |
---|---|---|
options section | shared_mem | This property is now ignored for Microsoft IIS. Supported for Apache. |
up_pad_size | Ignored by Microsoft IIS and Apache. |
|
backend_farm section | client_security | The new behavior is the same as the old default (not restricted). Restrict via the web server configuration. |
backend_security | The new behavior is the same as the old default (not restricted). Restrict via the web server configuration. | |
active_cookie | The new behavior is the same as the old default (yes to inject a standard cookie). The cookie is now server-level affinity only. | |
active_header | Relay Server does not inject a proprietary header for affinity management. | |
max_client_buffer | Flow and resource control is now managed via natural congestion on dedicated connections per client. | |
renew_overlapped_cookie | This setting is no longer required because socket-level affinity is no longer available. | |
socket_level_affinity | Socket-level affinity is no longer available. Relay Server transforms persistent HTTP to non-persistent HTTP downstream towards the back end. Relay Server client persistence over higher latency networks is still preserved. Server-level affinity via standard the cookie mechanism is the only supported behavior. |