最新版本:3.0.4-1

|
概览 |
|
|
目录 |
系统 |
|
类别 |
交换机 |
|
用户卷 |
否 |
|
最小 内存 |
96M |
|
操作系统 |
Linux |
|
约束 |
否 |
|
问题/注释 |
|
URLSW 是将 HTTP 请求分发给不同输出的交换机,其分发请求的依据是根据组件边界上定义为正则表达式的规则来匹配请求 URI 或请求头。 URLSW 在包含多个 Web 或应用服务器组件的应用中使用,可以在这些应用之间灵活分发 HTTP 请求。 URLSW 的工作方式与对等的 PS8 类似,但更为高级-它将会分析 HTTP 请求,而不分析 tcp/udp 端口。
URLSW 还具有嵌入式运行状况检查程序。 运行状况检查程序定期轮询连接的 out 终端,并确定服务器是否准备好处理请求。 如果任何检查的服务器未运行,URLSW 会将请求重定向到其他最为合适的活动服务器,从而自动禁用发往该服务器的请求流。 如果先前未运行的服务器重新处于活动状态,该服务器将被运行状况检查程序自动检测到,并继续接收请求。
交换机可级联;与任何定义的正则表达式都不匹配的传入流量会在不进行任何修改的情况下通过 aux 终端转发。 在 outX 和 aux 终端上接收的所有传入流量都通过 in 终端转发。
URLSW 通常用于将传入流量路由到应用中的不同组件。
|
资源 |
最小值 |
最大值 |
默认值 |
已测试 |
|
CPU |
0.1 |
2 |
0.1 |
2 |
|
内存 |
96 MB |
160 MB |
96 MB |
128 MB |
|
带宽 |
1 Mbps |
2 Gbps |
250 Mbps |
1800 Mbps |
|
名称 |
dir |
协议 |
说明 |
|
in |
in |
HTTP |
通用输入。 发送到 in 的流量将定向到其中一个输出,定向的原则是根据定义的正则表达式匹配 URL 或头。 |
|
ctl |
in |
HTTP |
控制用于设置正则表达式、启用/禁用输出以及检索输出终端设置和状态的终端。 |
|
out1-out8 |
out |
HTTP |
配置的输出。 将根据 outX_type 和 outX_value 属性通过特定输出来转发请求。 可将这些输出中的任一输出和所有输出保持未连接状态;定向到未连接输出的请求将被丢弃。 |
|
aux |
out |
HTTP |
级联输出。 将通过此终端发送未定向到任一 out1-out8 输出的传入请求。 此终端可保持未连接状态。 |
|
log |
out |
任何 |
访问用于存储日志(用于调试)的基于 CIFS 的网络文件系统。 已连接的服务器必须允许匿名登录并拥有名称为 share 的读写共享。 如果不使用此终端,可以让它保持未连接状态。 |
|
mon |
out |
CCE |
发送性能和资源使用统计信息。 如果未使用该终端,则可将其保持未连接状态。 |
|
名称 |
类型 |
说明 |
|
outX_type |
字符串 |
定义对传入请求进行匹配的条件。该属性有 4 种选项:Hostname、cookie、url 和 file type。
默认值:hostname |
|
outX_value |
字符串 |
匹配时所依据的正则表达式。 此处提供了正则表达式的定义。 示例:
默认值:(空) |
运行状况检查属性
|
名称 |
类型 |
说明 |
|
healthcheck_url |
字符串 |
用于以 http_get 和 http_head 运行状况检查方法执行后端 Web 服务器运行状况检查的 URL。 可将它指定为完整 URL (http://host.name/file/to/check/for.php) 或相对路径 (/file/to/check/for.php)。 如果指定为 URL,则运行状况检查在使用从 Host: 头中的 UR 中提取的主机名执行运行状况检查时将使用 HTTP/1.1 协议。 允许使用虚拟主机。 如果指定为相对路径,运行状况检查将使用 HTTP/1.0 协议,并检查该属性指定的文档。 如果该属性为空,运行状况检查将使用 HTTP/1.0 协议检查默认根目录“/”。 |
|
healthcheck_agent |
字符串 |
用作 http_get 和 http_head 运行状况检查方法的代理标识符的字符串。 如果为空,则使用 URLSW-health-check。 |
|
healthcheck_method |
字符串 |
用于执行后端 Web 服务器运行状况检查的方法。
默认值:tcp_connect。 |
|
healthcheck_regexp |
字符串 |
用于 http_get 运行状况检查模式的测试字符串。 使用简短或不具体的字符串(例如 OK)很可能会引起误报匹配。 该字符串是 perl 正则表达式;此处提供了有关 perl 正则表达式的更多详细信息。 |
|
healthcheck_interval |
Int |
后端 Web 服务器运行状况检查之间的时间间隔,指定以秒为单位。 |
超时属性
|
名称 |
类型 |
说明 |
|
keepalive_timeout |
Int |
保持连接超时值。 设置超时,在此期间,与客户端的保持连接将不会被服务器关闭。 |
|
client_header_timeout |
Int |
客户端发送请求头的超时值。 如果在此时间后客户端没有收到完整的头,将返回错误。 |
|
client_body_timeout |
Int |
客户端发送请求正文的超时值。 该超时值的设置不是指传输请求的整个正文的超时,而是指两次执行读取操作之间的超时。 如果客户端在此时间段内未传输任何数据,将返回错误。 |
|
send_timeout |
Int |
客户端接收数据的超时值。 如果客户端在该时间间隔内未响应,将关闭连接。 该超时值的设置不是指传输整个响应的超时,而是指两次执行写入操作之间的超时。 |
|
server_timeout |
Int |
与后端服务器建立 TCP 连接的超时值(秒)。 这包括运行状况检查。 |
控制接口属性
|
名称 |
类型 |
说明 |
|
ctl_port |
Int |
用于通过 ctl 终端访问 Web 服务控制接口的端口。 |
日志记录属性
|
名称 |
类型 |
说明 |
|
enable_access_log |
字符串 |
启用或禁用访问日志。 默认值:no |
|
access_log_filename |
字符串 |
访问日志的文件名。 默认值:access.log |
URLSW 组件通过 mon 终端报告以下自定义计数器。
|
计数器名称 |
说明 |
|
Active connections |
活动连接数 |
|
Accepted connections |
已接受的连接数 |
|
Handled connections |
已处理的连接数 |
|
Handled requests |
已处理的请求数 |
|
Active reading connections |
活动的读取连接数 |
|
Active writing connections |
活动的写入连接数 |
|
Active waiting connections |
活动的等待连接数 |
请求速率
URLSW 每秒路由不少于 3000 个事务(请求/响应对),具体数目受文档大小和网络带宽可用性的影响。
数据吞吐量
URLSW 以不低于 25 MB/秒的速率路由
并发连接数
URLSW 支持不少于 1000 个并发请求。 在测试阶段,URLSW 支持的同时活动传输数超过 10,000 个。
在组件启动失败的情况下,系统日志可能记录以下错误消息:
|
错误消息 |
说明 |
|
错误: 无法初始化 ctl 终端,请联系 CA Technologies 支持。 |
初始化 ctl 终端时发生系统错误,请联系 CA Technologies 支持。 |
|
错误: 已启用访问日志,但未连接日志终端。 |
日志终端未连接,但 enable_access_log 设置为 yes。 |
|
错误: 无法初始化外部运行状况检查程序,请联系 CA Technologies 支持。 |
启动外部运行状况检查程序时发生系统错误,请联系 CA Technologies 技术支持。 |
|
错误: 无法初始化统计信息报告,请联系 CA Technologies 支持。 |
在初始化统计信息报告时发生系统错误,请联系 CA Technologies 支持。 |
概览
所配置端口 ctl_port 上的 ctl 终端上显示了一个控制 Web 服务界面,可用于:
协议
输出终端的程序化控制使用提供只读功能的 GET HTTP 方法。 因此,每个支持的协议请求类型都可通过其 URI 和输出结构来定义。 不能在 URI 中使用的特殊字符应通过标准 % 编码进行转义。
下面是所有支持的 URI 的说明。
控制调用
可以调用以下控制调用:
下图显示了包含 4 个 Web 服务器和数据库的 URLSW 组件的典型用法。

正在使用的组件:
示例属性配置:
|
属性名 |
值 |
注释 |
|
out1_type |
hostname |
按主机名匹配 srv1 的请求 |
|
out1_value |
static.server.com、images.server.com |
srv1 为主机 static.server.com 和 images.server.com 的请求提供服务 |
|
out2_type |
文件类型 |
按文件类型匹配 srv2 的请求 |
|
out2_value |
|
srv2 为 PDF 文档提供服务 |
|
out3_type |
文件类型 |
按文件类型匹配 srv3 的请求 |
|
out3_value |
*.php |
srv3 为 PHP 脚本提供服务 |
连接到 aux 终端的 srv4 为所有其他请求提供服务
客户端请求到达用户网关。 该网关将请求转发到 URLSW 服务器,后者根据组件属性中定义的规则或者 ctl 终端动态添加的规则,在 4 个 Web 服务器之间分发请求。 ctl 终端可由管理员网关访问。
组件内所用的开源和第三方软件
URLSW 除了使用其基类 LUX6 所用的第三方开源软件包之外,还使用下列第三方/开源软件包。
|
软件 |
版本 |
已修改 |
许可 |
注释 |
|
nginx-stable |
0.8.53 |
No |
GPLv2 |
不适用 |
|
samba-client |
3.5.10-125 |
No |
GPLv2 |
不适用 |
|
samba-common |
3.5.10-125 |
No |
GPLv2 |
不适用 |
|
thttpd |
2.25b |
No |
BSD |
主页 |
|
版权所有 © 2013 CA。
保留所有权利。
|
|