Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server ServiceBroker错误处理模拟_Sql Server_Service Broker - Fatal编程技术网

Sql server ServiceBroker错误处理模拟

Sql server ServiceBroker错误处理模拟,sql-server,service-broker,Sql Server,Service Broker,我现在在一个项目中工作,在这个项目中,应该使用服务器代理功能将多个姿势同步到主服务器。现在,我为这个解决方案准备了错误处理,并想向客户展示它是如何工作的。这意味着我将为每种错误准备测试脚本,客户端在测试POS上运行它,以查看是否正确处理了错误 我们将使用SQL Server 2008R2,其中毒药消息=关闭 messagetype=XML(但内部可以是不同类型的数据,某些节点将包含blob) 姿势将在domen之外,因此运输将受到保护(但没有对话框加密) 我将错误分为几个子组: 逻辑错误(例如,

我现在在一个项目中工作,在这个项目中,应该使用服务器代理功能将多个姿势同步到主服务器。现在,我为这个解决方案准备了错误处理,并想向客户展示它是如何工作的。这意味着我将为每种错误准备测试脚本,客户端在测试POS上运行它,以查看是否正确处理了错误

我们将使用SQL Server 2008R2,其中毒药消息=关闭

messagetype=XML(但内部可以是不同类型的数据,某些节点将包含blob)

姿势将在domen之外,因此运输将受到保护(但没有对话框加密)

我将错误分为几个子组:

  • 逻辑错误(例如,改为字符串 ,它将由 服务器端的TRY-CATCH块。它是 易于模拟

  • ServiceBroker配置错误 (消息或将不被返回,或 无法到达目的地)。我想 它可以通过使用SQl来处理 服务器ServiceBroker事件和 模拟将是某种“坏的” 配置“(SB GUID,服务名称 等)

  • 传输错误。这是我们 我有一条坏消息。事实上是这样 客户的意见,以测试这种 错误。我不知道我们有没有 安全传输层 (证书)我们受到保护,免受 这样的错误。另一个问题 我怎样才能模拟这个呢

  • 问题:

    • 是否还有其他错误类型
    • 描述的#2错误处理逻辑足够好吗
    • 如何处理和模拟#3

    我文章的第二部分将讨论ServiceBroker错误、它们是如何发生的以及如何处理它们。对您来说,重要的是区分两类错误:

    • 可恢复的:传输问题,大多数配置错误,如路由错误,无法访问服务器。所有这些都不会导致SSB错误,而是导致延迟。消息将停留在传输队列中,期望问题是暂时的并且可以解决,包括一些配置问题。问题解决后,SSB将重试,并发送消息
    • 不可恢复:这些是SSB认为不可恢复的问题,例如错误的消息格式。在这种情况下,会话将中止,并且两个端点都会收到错误消息
    我还有一篇文章讨论了SSB激活上下文中异常处理的一些特定主题

    最后一点:我强烈建议您不要关闭毒药消息检测。禁用处理要比因为有毒消息而旋转令人恶心的w/o进程要好得多


    正如关于如何模拟损坏的消息的主题:很难模拟(您可以尝试设置一个端口转发器,让所有流量通过,但随机损坏其中一些流量),但这是毫无意义的。所有SSB流量,即使是明文,都是经过加密签名的,任何消息损坏都会由于消息签名验证失败而导致突然断开连接。

    我认为从应用程序的角度来看,无限接收(可能的性能问题)比禁用队列和关闭同步危害更小。计划的作业将关闭所有过期的对话,因此此进程将不是无限的。你怎么认为?