为版本 8 和 9 MobiLink 客户端设置网络协议和协议选项。
mlsrv11 -c "connection-string" -xo protocol[ protocol-options ] ...
protocol-options : ( keyword=value; ... )
指定与客户端应用程序进行通信所使用的通信协议。缺省协议是 TCPIP,端口为 2439。
协议的允许值如下所示:
tcpip 使用 TCP/IP 接受来自应用程序的连接。
http 通过标准 Web 协议接受连接。客户端应用程序可以挑选自己的 HTTP 版本,MobiLink 服务器将基于每个连接进行相应的调整。
https 使用处理安全事务的 HTTP 的变异版本接受连接。这个 HTTPS 协议通过 SSL/TLS(使用 RSA 加密)实现 HTTP,并且与任何其它 HTTPS 服务器都兼容。
https_fips 通过使用 HTTPS 协议和经 FIPS 认可的加密算法接受连接。HTTPS_FIPS 使用单独的 FIPS 140-2 认证软件。使用 rsa_tls 的服务器与使用 rsa_tls_fips 的客户端兼容,并且使用 rsa_tls_fips 的服务器与使用 rsa_tls 的客户端兼容。
您还可以指定网络协议选项,形式为 option=value。必须用分号分隔多个选项。可以指定的选项取决于所选择的协议。
TCP/IP 选项 如果指定 tcpip 协议,则还可以选择指定以下协议选项:
backlog=number-of-connections 在 MobiLink 服务器拒绝新的同步请求(从而在客户端导致同步失败)之前所允许的最大远程连接数。通过指定积压请求数限制,可以避免客户端在服务器忙时等待进行同步。如果未指定积压请求数限制,MobiLink 服务器将接受尽可能多的连接,从而可能达到或超过操作系统的网络连接限制。这可能导致速度减慢或性能不稳定。
客户端尝试与 MobiLink 服务器同步时,如果服务器已接受了其最大的远程连接数,则客户端会收到错误代码 -85 (SQLE_COMMUNICATIONS_ERROR)。客户端应用程序应该处理该错误并在几分钟后再次尝试连接。
有关 SQLE_COMMUNICATIONS_ERROR 的详细信息,请参见通信错误。
如果在可同时进行上万个同步的环境中使用 MobiLink,可使用该 backlog 选项来指定一个低于操作系统限制的最大远程连接数。请参见操作系统限制计划。
host=hostname MobiLink 服务器监听的主机名或 IP 地址。缺省值为 localhost。
ignore=hostname 在进行连接时被 MobiLink 服务器忽略的主机名或 IP 值。此选项使您可以忽略来自最低可能级别的负载平衡器的请求,从而防止 MobiLink 服务器日志和 MobiLink 监控器输出文件中出现过多的输出。可以指定多个需要忽略的主机,例如
-x tcpip(ignore=lb1;ignore=123.45.67.89)
。
liveness_timeout=n 在与某客户端进行最后一次通信之后,到 MobiLink 终止同步之前所经过的时间量(以秒为单位)。值为 0 表示没有超时。缺省值是 120 秒。
port=portnumber MobiLink 服务器监听的套接字端口号。缺省端口为 2439,这是用于 MobiLink 服务器的 IANA 注册端口号。
mlsrv11 -x 和 -xo 选项使用同一个缺省端口,而且即使没有指定 -x 选项也会启动。因此,若不在 -x 选项中更改端口,就必须更改 -xo 的端口。
security=cipher(keyword=value;...) 通过此连接的所有通信都会使用传送层安全性进行加密和验证。编码器可以是以下各项之一:
编码器 | 说明 |
---|---|
rsa_tls | RSA 加密。 |
rsa_tls_fips | 经 FIPS 认可的 RSA 加密。rsa_tls_fips 使用单独的 FIPS 140-2 认证软件,但是它与使用 https 的客户端(以及 SQL Anywhere 9.0.2 版或更高版本)兼容。 |
ecc_tls | 椭圆曲线加密算法。为了向后兼容,还可以将 ecc_tls 指定为 certicom_tls。 |
安全参数为 certificate(用于服务器验证的标识文件的路径和文件名)和 certificate_password。必须使用与您选择的编码器套件匹配的证书。
有关详细信息,请参见启动支持传送层安全的 MobiLink 服务器。
HTTP 选项 如果指定 http 协议,则还可以选择指定以下协议选项:
backlog=number-of-connections 在 MobiLink 服务器拒绝新的同步请求(从而在客户端导致同步失败)之前所允许的最大远程连接数。通过指定积压请求数限制,可以避免客户端在服务器忙时等待进行同步。如果未指定积压请求数限制,MobiLink 服务器将接受尽可能多的连接,从而可能达到或超过操作系统的网络连接限制。这可能导致速度减慢或性能不稳定。
客户端尝试与 MobiLink 服务器同步时,如果服务器已接受了其最大的远程连接数,则客户端会收到错误代码 -85 (SQLE_COMMUNICATIONS_ERROR)。客户端应用程序应该处理该错误并在几分钟后再次尝试连接。
有关 SQLE_COMMUNICATIONS_ERROR 的详细信息,请参见通信错误。
如果在可同时进行上万个同步的环境中使用 MobiLink,可使用该 backlog 选项来指定一个低于操作系统限制的最大远程连接数。有关详细信息,请参见操作系统限制计划。
buffer_size=number 自 MobiLink 服务器发送的 HTTP 消息的最大主体大小,单位为字节。更改此选项会减小或增大为发送 HTTP 消息而分配的内存大小。缺省值为 65535 个字节。
contd_timeout=seconds MobiLink 服务器在放弃同步之前等待接收未完成的同步中下一部分的秒数。您可以调整该选项,以便在等待时间较长足以表明客户端不会继续连接时释放 MobiLink 服务器的资源。缺省值为 30 秒。
host=hostname MobiLink 服务器监听的主机名或 IP 地址。缺省值为 localhost。
port=portnumber MobiLink 服务器监听的套接字端口号。端口号必须与 MobiLink 服务器正在监控的端口相匹配。缺省端口是 80。
mlsrv11 -x 和 -xo 选项使用同一个缺省端口,并且即使未指定 -x 选项也会启动。因此,若不在 -x 选项中更改端口,就必须更改 -xo 的端口。
session_key={ cookie | header } 创建一个 JSESSIONID 的替代方法,用于跟踪连接。如果您的网络已使用了 JSESSIONID,此选项可能是必需的。
unknown_timeout=seconds 在 MobiLink 服务器放弃同步之前在新连接上等待接收 HTTP 标头的秒数。您可以调整该选项,以便在等待时间较长足以表明客户端不再继续连接时释放 MobiLink 服务器资源。缺省值为 30 秒。
version=http 版本 MobiLink 服务器自动检测客户端使用的 HTTP 版本。该参数是一个字符串,它用于在服务器无法检测到客户端使用的方法时指定缺省的 HTTP 版本。可以选择 1.0 或 1.1。缺省值是 1.1。
HTTPS 或 HTTPS_FIPS 选项 https 协议使用 RSA 数字证书来实现传送层安全性。https_fips 协议使用单独的 FIPS 140-2 认证软件,但该软件与 https 兼容。
有关详细信息,请参见启动支持传送层安全的 MobiLink 服务器。
如果指定 https 协议,则可选择指定以下协议选项:
backlog=number-of-connections 在 MobiLink 拒绝新的同步请求(从而在客户端导致同步失败)之前所允许的最大远程连接数。通过指定积压请求数限制,可以避免客户端在服务器忙时等待进行同步。如果不指定积压请求数限制,则无论存在多少积压请求,客户端都会尝试进行同步。
buffer_size=number 自 MobiLink 服务器发送的 HTTPS 消息的最大主体大小,单位为字节。更改此选项会减小或增大为发送 HTTPS 消息而分配的内存大小。缺省值为 65535 个字节。
contd_timeout=seconds MobiLink 服务器在放弃同步之前等待接收未完成的同步中下一部分的秒数。您可以调整该选项,以便在等待时间较长足以表明客户端不会继续连接时释放 MobiLink 服务器的资源。缺省值为 30 秒。
host=hostname MobiLink 服务器监听的主机名或 IP 地址。缺省值为 localhost。
port=portnumber MobiLink 服务器监听的套接字端口号。端口号必须与 MobiLink 服务器所监控的端口相匹配。缺省端口是 443。
mlsrv11 -x 和 -xo 选项使用同一个缺省端口并启动 -x(即使未指定它),因此,若不在 -x 选项中更改端口,就必须更改 -xo 的端口。
certificate 用于服务器验证的证书文件的路径和文件名。它必须是 RSA 证书。
certificate_password 一个用于为证书文件指定口令的可选参数。
有关安全性的详细信息,请参见传送层安全。
session_key={ cookie | header } 创建一个 JSESSIONID 的替代方法,用于跟踪连接。如果您的网络已使用了 JSESSIONID,此选项可能是必需的。
unknown_timeout=seconds 在 MobiLink 服务器放弃同步之前在新连接上等待接收 HTTP 标头的秒数。您可以调整该选项,以便在等待时间较长足以表明客户端不再继续连接时释放 MobiLink 服务器资源。缺省值为 30 秒。
version=http 版本 MobiLink 服务器自动检测客户端使用的 HTTP 版本。该参数是一个字符串,它用于在服务器无法检测到客户端使用的方法时指定缺省的 HTTP 版本。可以选择 1.0 或 1.1。缺省值是 1.1。
下面的命令行将积压请求数设置为 10 个连接。
mlsrv11 -c "dsn=SQL Anywhere 11 CustDB;uid=ml_server;pwd=sql" -xo http(backlog=10) |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |