.net 什么是SQL Server中的Service Broker?

.net 什么是SQL Server中的Service Broker?,.net,sql,sql-server,service-broker,.net,Sql,Sql Server,Service Broker,SQL Server中的Service Broker是什么?在简单数据库而不是分布式数据库中启用它是否有意义?SQL Service Broker是一种扩展机制,允许您将事件排队以进行异步处理 启用代理没有内在的危害。如果不使用,它将只是闲置的 它可以在简单数据库和分布式数据库中工作。一个简单的用例是日志队列。我们在客户端使用它将要异步处理的XML消息排队。因此,我们将XML推送到InitatorQueue,然后让一个服务将它们从队列中拉出来,通过XPath提取一些必要的属性,并将它们插入数据库

SQL Server中的Service Broker是什么?在简单数据库而不是分布式数据库中启用它是否有意义?

SQL Service Broker是一种扩展机制,允许您将事件排队以进行异步处理

启用代理没有内在的危害。如果不使用,它将只是闲置的

它可以在简单数据库和分布式数据库中工作。一个简单的用例是日志队列。我们在客户端使用它将要异步处理的XML消息排队。因此,我们将XML推送到InitatorQueue,然后让一个服务将它们从队列中拉出来,通过XPath提取一些必要的属性,并将它们插入数据库中的持久性表中


.

Service Broker是内置于SQL server db引擎中的消息传递系统。 下面是一些文章,你可以看看它是如何工作的




ServiceBroker是一个异步消息传递系统。它允许您向队列发送消息。然后,某个工作进程拾取消息。没有关于订单或何时收到邮件的保证。但SQLServer确实保证消息处理以事务方式进行


异步消息传递是最重的体系结构之一。你应该仔细考虑附加值是否值得复杂。

实际上服务Brekr保证消息被接收,以便它们被发送进来。@ Mrad Paljdic:在同一对话中,消息是正确的,但不是一般的。例如,假设您向ClientCreator发送CreateClient消息,然后向AddressCreator发送CreateAddress消息。第二个可能会在第一个完成之前处理。因为Service Broker与Sql Server引擎集成,所以它不需要使用分布式事务,这实际上使它成为最轻量级(因此性能最好)的体系结构之一。@Pawel Marciniak:异步编程是一种重量体系结构。同意在异步编程中,ServiceBroker是一种相对轻量级的方法