Child pages
  • Network Related Settings

Versions Compared

Key

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

...

Connection Mode

Used Threads

Used sockets

Two-Way socket

1 thread per concurrent request

1 per request + 2 per client

HTTP Tunnel

2 Tomcat and 2 non-tomcat threads per client

2 per client

Socket Tunnel

2 threads per client

1 per client

...

Connection Mode

Relevance

Two-Way Socket

When the machine of which the Servoy Application Server runs has multiple network interfaces on which the Smart Clients could connect, this setting needs to be set to the IP address of the server's loopback interface (usually 127.0.0.1)

HTTP/Socket Tunnel

no relevance

(warning)  If a hostname is specified, note that the hostname is resolved to an IP address on the server!

...

Connection mode

Proxy Supported?

Config

Comments

Two-Way Socket

No

N/A

Two-way socket communication cannot be instantiated by the Smart Client inside Java WebStart if Java WebStart is configured to run through a proxy.
The Smart Client will fall back to Direct Connection mode, which might work, as it requires the Servoy Application Server to be able to reach each individual client machine an any random port

HTTP Tunnel

Yes

Not required by default

It's possible to explicitly specify the proxy url, username and password, through #Advanced HTTP Tunnel configuration

Socket Tunnel

Yes

 

No configuration required

 

 

...

Property

Default Value

Description

system.property.com.sebster.tunnel.http.client.closeRequestOnFlush

true

Whether or not to close the HTTP Request after each package of data. Default is true. While this incurs a significant overhead due to having to instantiate an HTTP request for each package of data, this does prevent buffering issues.
Besides incurring significant overhead, it also results in a large number of HTTP Requests to the Application Server, which at some point might start blocking the requests.

system.property.com.sebster.tunnel.http.client.chunked

true

Whether or not to send data packages as chunks of a larger HTTP Request. This setting has no effect if closeRequestOnFlush is set to true. Chunked mode is the preferred mode of operation, but susceptible to buffering issues.

system.property.com.sebster.tunnel.http.client.keepAliveInterval

15

The interval (in seconds) with which a little data is send into the HTTP request to prevent it from being terminated by the network due to inactivity. Lower when experiencing connection timeout issues.

system.property.com.sebster.tunnel.http.client.maxRequestAge

300

The maximum time (in seconds) that a HTTP request is kept alive. Lower when experiencing timeout issues.

system.property.com.sebster.tunnel.http.client.contentLength

2097152 b

The maximum length of a single HTTP Request. Lower only when the network enforces a lower limit

system.property.com.sebster.tunnel.http.client.strictContentLength

false

If set to true, the actual length of each HTTP request will be made to match the contentLength setting, by appending dummy data. Only set to true if the Content-Length is enforced by the network, as it incurs a significant performance penalty

system.property.com.sebster.tunnel.http.client.proxyUri

 

In case the Smart Client needs to communicate through a specific proxy and the proxy configuration cannot be done in Java WebStart, the proxy url can be set directly on the HTTP Tunnel.

system.property.com.sebster.tunnel.http.client.proxyUsername, 
com.sebster.tunnel.http.client.proxyPassword

 

Proxy credentials. If required by the proxy and not set here, the Smart Client will provide the user with a dialog to enter the credentials

system.property.com.sebster.tunnel.http.client.userAgent

 

Empty by default. Can be set to any value if it is required to send a specific user-agent string with each HTTP request

...