High Availability and Scalability


This chapter will introduce the high-availability and scalability options you can choose from when you deploy your Service Broker applications. This chapter will cover the following topics in detail:
  • Database mirroring: Database mirroring is a new high-availability feature in SQL Server 2008. With database mirroring, you can mirror a SQL Server 2008 database between two server instances. One database acts as the principal, and the other database acts as the mirror. When you use Service Broker, you can also mirror your Service Broker service between two databases, and Service Broker will ensure that your messages are forwarded to the current principal.

  • Load balancing: Service Broker provides built-in functionality for load balancing. When you provide more than one route at the initiating service for a specific service name, Service Broker randomly picks a route from the available ones and sends the conversation’s messages along this route. Therefore, load balancing is easy with Service Broker.

  • Message forwarding:Message forwarding allows an instance of SQL Server to accept messages from outside the instance and send those messages to a different instance. In this case, the instance acts as a Service Broker message forwarder. With message forwarding, you can encapsulate your physical Service Broker infrastructure and use message forwarding to scale things out.

  • Configuration notice service: An administrator typically configures Service Broker routing information. To provide dynamic routing information for your Service Broker application, you can use a configuration notice service. A configuration notice service exists on the initiating service side and provides dynamic routing information for a target service.

  • Data-dependent routing: One strategy to achieve scale-out is to load-balance a Service Broker service. Another strategy is data partitioning. While Service Broker naturally provides a mechanism for load balancing, it is also possible to build highly scalable Service Broker applications that use partitioned data using Service Broker. The key to achieving this lies in data-dependent routing, which is the subject of this section.


Load Balance Request Message Message Type Classifier Component Service Broker 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Klaus Aschenbrenner 2008

Personalised recommendations