Skip to content

Commit 8e9ea8f

Browse files
authored
Merge pull request #311112 from johndowns/reliability-service-bus
Service Bus - Integrate with Reliability Hub documentation
2 parents 7cde346 + 5a354d3 commit 8e9ea8f

7 files changed

Lines changed: 25 additions & 82 deletions

articles/service-bus-messaging/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,8 @@
156156
href: https://github.com/Azure-Samples/azure-messaging-replication-dotnet/tree/main/functions/config/ServiceBusCopyToEventHub
157157
- name: Acquire messages from Event Hubs
158158
href: https://github.com/Azure-Samples/azure-messaging-replication-dotnet/tree/main/functions/config/EventHubCopyToServiceBus
159+
- name: Reliability
160+
href: /azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json
159161
- name: Security
160162
items:
161163
- name: Security baseline

articles/service-bus-messaging/prepare-for-planned-maintenance.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@ If your namespace is experiencing connection failures, check the [Resource Hea
2525

2626
## Next steps
2727

28+
- To learn about how to make Azure Service Bus resilient to a range of problems, see [Reliability in Azure Service Bus](/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json).
2829
- For more information about retry logic, see [Retry logic for Azure services](/azure/architecture/best-practices/retry-service-specific).
2930
- Learn more about handling transient faults in Azure at [Transient fault handling](/azure/architecture/best-practices/transient-faults).

articles/service-bus-messaging/service-bus-async-messaging.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,11 @@ In order to maintain availability of any of these entities, consider a number of
2222

2323
For each of these failures, different failure modes exist that enable an application to continue to perform work at some level of reduced capability. For example, a system that can send messages but not receive them can still receive orders from customers but cannot process those orders. This topic discusses potential issues that can occur, and how those issues are mitigated. Service Bus has introduced a number of mitigations which you must opt into, and this topic also discusses the rules governing the use of those opt-in mitigations.
2424

25-
## Reliability in Service Bus
25+
> [!NOTE]
26+
> To learn about how Service Bus is resilient to a range of problems, and the capabilities that you can use to increase its reliability, see [Reliability in Azure Service Bus](/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json).
27+
28+
## Failure mode types
29+
2630
There are several ways to handle message and entity issues, and there are guidelines governing the appropriate use of those mitigations. To understand the guidelines, you must first understand what can fail in Service Bus. Due to the design of Azure systems, all of these issues tend to be short-lived. At a high level, the different causes of unavailability appear as follows:
2731

2832
* Throttling from an external system on which Service Bus depends. Throttling occurs from interactions with storage and compute resources.
@@ -32,8 +36,6 @@ There are several ways to handle message and entity issues, and there are guidel
3236

3337
> [!NOTE]
3438
> The term **storage** can mean both Azure Storage and SQL Azure.
35-
>
36-
>
3739
3840
Service Bus contains a number of mitigations for these issues. The following sections discuss each issue and their respective mitigations.
3941

@@ -50,10 +52,7 @@ Other components within Azure can occasionally have service issues. For example,
5052
### Service Bus failure on a single subsystem
5153
With any application, circumstances can cause an internal component of Service Bus to become inconsistent. When Service Bus detects this, it collects data from the application to aid in diagnosing what happened. Once the data is collected, the application is restarted in an attempt to return it to a consistent state. This process happens fairly quickly, and results in an entity appearing to be unavailable for up to a few minutes, though typical down times are much shorter.
5254

53-
In these cases, the client application generates a timeout exception or a messaging exception. Service Bus contains a mitigation for this issue in the form of automated client retry logic. Once the retry period is exhausted and the message is not delivered, you can explore using other mentioned in the article on [handling outages and disasters][handling outages and disasters].
55+
In these cases, the client application generates a timeout exception or a messaging exception. Service Bus contains a mitigation for this issue in the form of automated client retry logic. Once the retry period is exhausted and the message is not delivered, you can use [geo-replication](./service-bus-geo-replication.md), [geo-disaster recovery](./service-bus-geo-dr.md), or another approach to [switch to a different namespace](./service-bus-outages-disasters.md).
5456

5557
## Next steps
56-
Now that you've learned the basics of asynchronous messaging in Service Bus, read more details about [handling outages and disasters][handling outages and disasters].
57-
58-
[Best practices for insulating applications against Service Bus outages and disasters]: service-bus-outages-disasters.md
59-
[handling outages and disasters]: service-bus-outages-disasters.md
58+
Now that you've learned the basics of asynchronous messaging in Service Bus, read more details about [Reliability in Azure Service Bus][/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json].

articles/service-bus-messaging/service-bus-geo-dr.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ The Geo-Disaster Recovery feature ensures that the entire configuration of a nam
1616

1717
## Comparison with Geo-Replication
1818

19-
Azure Service Bus offers two features for geographic resilience: Geo-Replication and [Geo-Disaster Recovery](service-bus-geo-dr.md). The key difference is that Geo-Replication replicates both metadata and data (messages, message states, property changes), while Geo-Disaster Recovery replicates metadata only. For most disaster recovery scenarios, Geo-Replication is the recommended choice. For a detailed comparison, see [High-level feature differences](service-bus-outages-disasters.md#high-level-feature-differences).
19+
Azure Service Bus offers two features for geographic resilience: Geo-Replication and [Geo-Disaster Recovery](service-bus-geo-dr.md). The key difference is that Geo-Replication replicates both metadata and data (messages, message states, property changes), while Geo-Disaster Recovery replicates metadata only. For most disaster recovery scenarios, Geo-Replication is the recommended choice. For a detailed comparison, see [Reliability in Azure Service Bus - Resilience to region-wide failures](/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json#resilience-to-region-wide-failures).
2020

2121
## Important points to consider
2222

@@ -124,7 +124,7 @@ Once the failover is initiated -
124124
1. Pull messages from the former primary namespace once it's available again. After that, use that namespace for regular messaging outside of your Geo-Disaster Recovery setup, or delete the old primary namespace.
125125

126126
> [!NOTE]
127-
> Only fail forward semantics are supported. In this scenario, you fail over and then re-pair with a new namespace. Failing back is not supported; for example, like in a SQL cluster.
127+
> Only *fail-forward* semantics are supported. When you initiate a failover with geo-disaster recovery, you can re-pair with a new namespace after failover completes. You can't fail back to the previous primary replica. These semantics might be different to other data stores you're used to, like Microsoft SQL Server clusters.
128128
129129
You can automate failover either with monitoring systems, or with custom-built monitoring solutions. However, such automation takes extra planning and work, which is out of the scope of this article.
130130

articles/service-bus-messaging/service-bus-geo-replication.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ This feature allows promoting any secondary region to primary, at any time. Prom
3838
3939
## Comparison with Geo-Disaster Recovery
4040

41-
Azure Service Bus offers two features for geographic resilience: Geo-Replication and [Geo-Disaster Recovery](service-bus-geo-dr.md). The key difference is that Geo-Replication replicates both metadata and data (messages, message states, property changes), while Geo-Disaster Recovery replicates metadata only. For most disaster recovery scenarios, Geo-Replication is the recommended choice. For a detailed comparison, see [High-level feature differences](service-bus-outages-disasters.md#high-level-feature-differences).
41+
Azure Service Bus offers two features for geographic resilience: Geo-Replication and [Geo-Disaster Recovery](service-bus-geo-dr.md). The key difference is that Geo-Replication replicates both metadata and data (messages, message states, property changes), while Geo-Disaster Recovery replicates metadata only. For most disaster recovery scenarios, Geo-Replication is the recommended choice. For a detailed comparison, see [Reliability in Azure Service Bus - Resilience to region-wide failures](/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json#resilience-to-region-wide-failures).
4242

4343
## Scenarios
4444
The Geo-Replication feature can be used to implement different scenarios, as described here. For guidance on when to trigger a promotion, see [Recommended scenarios to trigger promotion](#recommended-scenarios-to-trigger-promotion).

articles/service-bus-messaging/service-bus-migrate-standard-premium.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,4 +216,4 @@ However, if you can migrate during a planned maintenance/housekeeping window, an
216216
## Next steps
217217

218218
* Learn more about the [differences between standard and premium Messaging](./service-bus-premium-messaging.md).
219-
* Learn about the [High-Availability and Geo-Disaster recovery aspects for Service Bus premium](service-bus-outages-disasters.md#protection-against-outages-and-disasters).
219+
* Learn about the [high availability, geo-replication, and geo-disaster recovery aspects for Service Bus premium](/azure/reliability/reliability-service-bus?toc=/azure/service-bus-messaging/TOC.json).

0 commit comments

Comments
 (0)