跳转到主要内容
TCP Server 端口支持托管通用接口,通过 TCP 接收任意数据。

核心功能

  • 通用 TCP/IP 服务器端点,支持 TLS/SSL 和明文传输,适用于任意数据流
  • 可配置的消息分隔,支持使用静态分隔符或基于长度的解析
  • 具备双向通信能力,支持基于连接 ID 的路由和连接事件消息

概述

每个 TCP Server 端口都会在指定的端口上监听传入的 TCP 流量,可以是 TLS/SSL 加密,也可以是纯文本。该端口适用于 知行之桥 需要接收不一定符合其它标准协议提供的约束的任意数据时的情况。 由于 TCP 流量是一个恒定的流,本质上没有”开始”或”结束”点,因此必须对端口进行配置,以确定一个消息的结束点和下一个消息的开始点。端口支持两种方法:
  • 一个静态的字符串/字符分隔符,用于结束当前消息或开始下一个消息。
  • 读取传入的 TCP 数据中的一个值,以确定信息的长度。
对于第二种方式,端口需要一个偏移量(从第一个字节后多少个字节开始读取消息长度)和一个大小(从偏移量开始读取长度值,要读取多少个字节)。如果消息的长度是消息的”头”中的第一个值,那么偏移量应该是 0。 一旦达到分隔符或长度,端口将向 知行之桥 工作流推送包含通过 TCP 接收的原始数据的消息。 TCP Server 端口还可以在客户端连接或断开连接时生成 知行之桥 消息,以提醒工作流中的其它进程。更多信息可参见连接和断开消息部分。 有关向 TCP 客户端发送响应的信息,请参见发送消息部分。

端口配置

设置选项卡

配置

与端口关键配置有关的设置。

消息解码

与区分 TCP 流中的单个消息有关的设置。

TLS 设置

与 TLS/SSL 传输安全相关的设置。

高级设置选项卡

保持活动

与服务器发送 keep-alive 数据包以保持空闲连接有关的设置。

高级设置

先前目录中未包含的设置。

消息

消息设置确定端口如何搜索消息并在处理后管理它们。

设置描述
保存到已发送文件夹选中此项可将端口处理的文件复制到该端口的“已发送”文件夹中。
已发送文件夹方案端口根据选定的时间间隔对 已发送 文件夹中的文件进行分组。例如,Weekly 选项指示端口每周创建一个新的子文件夹,并将本周发送的所有文件存储在该文件夹中。空白设置告诉端口将所有文件直接保存在 已发送 文件夹中。对于处理许多事务的端口,使用子文件夹可以帮助保持文件有序并提高性能。

日志

用于管理日志创建和存储的设置。

设置描述
日志级别指定要记录在端口日志目录中的信息类型:
  • None - 不创建任何日志。
  • Error - 仅当端口遇到错误时才创建日志。
  • Warning - 仅当端口发出警告时才创建日志。
  • Info - 记录工作流的一般信息,包括任何错误和警告(如果适用)。
  • Debug - 记录成功和失败工作流的详细调试信息。
  • Trace - 记录成功和失败工作流的详细跟踪信息。
请注意:Debug 和 Trace 级别的日志可能会记录敏感信息,包括消息内容和 SSL 证书。尽管连接属性(例如密码)被屏蔽了,但在与您的组织外部共享它们之前,请查看此级别的日志以避免泄漏敏感信息。
日志文件夹结构指示端口根据选定的时间间隔将日志文件夹中的文件分组。例如,Weekly 选项指示端口每周创建一个新的子文件夹,并将该周的所有日志存储在该文件夹中。空白设置告诉端口将所有日志直接保存在日志文件夹中。对于处理许多事务的端口,使用子文件夹有助于保持日志的有序性并提高性能。
保留消息副本指示端口在日志目录中保存最新消息副本的切换。请注意,端口每个子文件夹只保留一个消息,并且端口在再次运行时会覆盖以前保存的消息。

杂项设置

特殊设置适用于特定用例。

设置描述
其他设置允许在以分号分隔的列表中配置隐藏的端口设置,例如 setting1=value1;setting2=value2。正常的端口用例和功能不需要使用这些设置。

服务器选项卡

受信任的 IP 地址

自动化选项卡

自动化

与端口自动处理文件相关的设置。

性能

与端口资源分配相关的设置。

设置描述
最大工作线程数此端口上处理文件时从线程池中消耗的最大工作线程数。如果设置,则会覆盖 高级设置 页面的 性能设置 部分的默认设置。
最大文件数分配给端口的每个线程发送的最大文件数。如果设置,则会覆盖 高级设置 页面的 性能设置 部分的默认设置。

告警选项卡

SLA 选项卡

连接和断开消息

默认情况下,TCP Server 端口仅在客户端传输数据时生成 知行之桥 消息,以便端口识别完整的消息(根据消息解码部分的设置)。当客户端连接到服务器(如果在高级设置选项卡中启用了连接消息)或断开与服务器的连接(如果在高级设置选项卡中启用了断开消息)时,端口也可以生成 知行之桥 消息。 当这些特殊消息生成后,知行之桥 消息中会添加一个特殊的头部: x-tcpserver-event 客户端连接时,此头部设置为值 connected,而客户端断开连接时,此头部设置为 disconnected。 该头部必须由工作流中之后的端口检查,以检测写入 TCP Server 端口输出文件夹的消息是否属于这些特殊消息。

发送消息

TCP Server 端口还使用一个特殊的头部值来向连接的客户端发送消息: x-tcpserver-connectionid 该头部被添加到端口生成的任何输出消息中,设置为 “Connection ID” 值,以唯一标识所连接的客户端之一。为了确保消息被发送到正确的客户端,被发送回此客户端的消息 必须 将此相同的头部设置为相同的值。 由于该头部已经存在于端口写出的任何消息中,因此如果消息通过 知行之桥 工作流并返回 TCP Server 端口的交易选项卡,它仍将具有相同的 “Connection ID” 值,并将返回给发送原始消息的同一个客户端。如果消息不能直接路由回 TCP Server 端口,那么必须保存 “Connection ID” 值,并将其作为一个头部(与上面列出的名称相同)应用到任何返回给客户端的新消息中。

宏

示例