0 关注者 · 3 帖子

文件传输协议 (FTP) 是一种标准的网络协议,用于在计算机网络上的客户端和服务器之间传输计算机文件。

了解更多信息

文章 Tete Zhang · 十月 26, 2022 3m read

“池大小”(PoolSize)设置的值决定了一个组件的作业的量和启动方式。在这篇文章中我们将具体讨论对于不同类型的组件来说“池大小”设置的可能值和这些值所代表的含义。

Pool Size = 1

对于所有的组件来说,运行池大小为1的含义都是一样的: 该组件有且只有一个作业,单独运行该组件的代码,顺序处理发送到该组件的消息(FIFO)。

Pool Size > 1

对于业务进程(BP)和业务操作(BO)来说,当运行池大小大于1时,该组件将运行多个作业(作业数=运行池大小设置数)。每个作业都只运行该组件的代码,但消息处理的顺序将被打乱。将运行池的大小设为大于1的值可以在一定程度上提升组件处理消息的性能,但是每个作业的性能还是受限于系统资源的,所以并不是说组件的性能可以随着运行池的大小增加而无限提升。

对于轮询类业务服务(Polling BS)来说,当运行池大小大于1时,该服务也将运行多个作业(作业数=运行池大小设置数)。但这种配置会导致多个进程对轮询结果产生竞争(race condition),所以一般情况下轮询服务不应将运行池大小设为大于1的数值。

1
0 239
文章 姚 鑫 · 五月 31, 2021 4m read

第十二章 IBM WebSphere MQ检索邮件

检索邮件

要检索邮件,请执行以下操作:

  1. 按照“创建连接对象”中的说明创建连接对象。在这种情况下,请创建%Net.MQRecv的实例。Connection对象有一个消息队列,可以从中检索消息。
  2. 根据需要调用以下方法:
  • %Get()-通过引用返回字符串消息作为第一个参数。
  • %GetStream()-给定初始化的文件字符流,此方法从队列中检索消息,并将其放入与该流关联的文件中。请注意,必须设置流的Filename属性才能对其进行初始化。不支持二进制流。
  1. 检查调用的方法返回的值。请参阅“获取错误代码”。请记住,当队列为空时,IBM WebSphere MQ返回2033
  2. 检索完消息后,调用Connection对象的%Close()方法以释放动态链接库的句柄。

示例1:ReceiveString()

下面的类方法从mqtest队列检索消息。

0
0 157
文章 姚 鑫 · 五月 29, 2021 4m read

第十章 使用FTP

IRIS提供了一个类%Net.FtpSession,可以使用它从InterSystems IRIS内建立与FTP服务器的会话。

建立FTP会话

要建立FTP会话,请执行以下操作:

  1. 创建%Net.FtpSession的实例。
  2. 可以选择设置此实例的属性,以控制会话的常规行为:
  • Timeout 超时指定等待FTP服务器回复的时间(以秒为单位)。
  • SSLConfiguration指定用于连接的激活的SSL/TLS配置(如果有)。如果FTP服务器使用HTTPS,请使用此选项。
  • TranslateTable指定在读取文件内容或写入文件内容时要使用的转换表。
  • UsePASV启用PASV模式。
  • FTP服务器使用https时,SSLCheckServerIdentity适用。默认情况下,当%Net.FtpSession的实例连接到SSL/TLS服务器时,它会检查证书服务器名称是否与用于连接到服务器的DNS名称匹配。如果这些名称不匹配,则不允许连接。

若要禁用此检查,请将SSLCheckServerIdentity属性设置为0。

  1. 调用Connect()方法以连接到特定的FTP服务器。
  2. 调用ascii()binary()方法将传输模式分别设置为ASCII模式或二进制模式。要查看当前传输模式,请检查实例的Type属性的值。
0
0 210