Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (中文) » SQL Remote » 管理 SQL Remote 系统 » 提高 SQL Remote 的性能

 

发送消息任务

SQL Remote 消息代理 (dbremote) 执行以下任务以发送消息:

  • 扫描发布者事务日志   SQL Remote 消息代理 (dbremote) 扫描发布者数据库的事务日志,并为预订者将事务日志条目转换为消息。由 -l 选项定义的最大消息长度在系统的所有数据库中必须相同。

    对于大事务,SQL Remote 消息代理 (dbremote) 会创建由多个部分组成的消息。所有这些消息都包含一个序列号,用来跟踪它们在事务中的位置。预订者数据库中的 SQL Remote 消息代理 (dbremote) 使用该序列号,以确保按正确顺序应用消息,并且不会丢失消息。

  • 将消息发送到远程数据库   SQL Remote 消息代理 (dbremote) 会按由每个远程用户的发送频率属性指定的时间发送消息。请参见调整发送延迟

    如果 SQL Remote 消息代理 (dbremote) 的高速缓存超过设置值,则 SQL Remote 消息代理 (dbremote) 会提前发送消息。SQL Remote 消息代理 (dbremote) 将其消息存储在高速缓存中。当所用的高速缓存超过指定值时,将发送消息。请参见通过高速缓存发送的消息调整吞吐量

  • 处理远程数据库的重发请求   当用户请求重新发送消息时,发布者数据库中的 SQL Remote 消息代理 (dbremote) 会中断常规消息发送过程,以处理重发请求。

    可以控制使用 -ru 选项处理这些重发请求时执行的紧急程度。请参见调整处理重发请求的速度

  • 将确认发送到发布者数据库   在预订的数据库中收到并应用了消息后,会将确认返回给发布者。请参见了解保证消息传送系统