Skip to content

Commit 5cbae93

Browse files
authored
(DOCSP-45856) Revises per explicit edits from v1 review. (#50)
* (DOCSP-45856) Revises per explicit edits from v1 review. * Revises per copy review.
1 parent 94e09c5 commit 5cbae93

File tree

1 file changed

+24
-7
lines changed

1 file changed

+24
-7
lines changed

source/resiliency.txt

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,10 @@ Database Replication
2929
|service| {+clusters+} consist of a minimum of three nodes, and you can increase
3030
the node count to any odd number of nodes you require. |service| first writes data
3131
from your application to a primary node, and then |service| incrementally replicates
32-
and stores that data across all secondary nodes within your {+cluster+}.
32+
and stores that data across all secondary nodes within your {+cluster+}. Additionally,
33+
you can control the durability of your data storage by adjusting the write concern
34+
of your application code to complete the write only once a certain number of secondaries
35+
have committed the write. To learn more, see :ref:`resiliency-read-write-concerns`.
3336

3437
By default, |service| distributes {+cluster+} nodes across availability zones within
3538
one of your chosen cloud provider's availability regions. For example, if your
@@ -49,7 +52,7 @@ and reads directly.
4952
In the event that a primary node is unavailable, because of infrastructure
5053
outages, maintenance windows or any other reason, |service| {+clusters+} self-heal
5154
by converting an existing secondary node into your primary node to maintain
52-
database availability.
55+
database availability. To learn more about this process, see `How does MongoDB Atlas deliver high availability? <https://www.mongodb.com/docs/atlas/reference/faq/deployment/#how-does-service-fullname-deliver-high-availability->`__
5356

5457
Maintenance Window Uptime
5558
`````````````````````````
@@ -59,6 +62,8 @@ a rolling fashion to one node at a time. During this process, |service| elects a
5962
primary when necessary just as it does during any other unplanned primary node
6063
outage.
6164

65+
When you `configure a maintenance window <https://www.mongodb.com/docs/atlas/tutorial/cluster-maintenance-window/>`__, select a time that corresponds to when your application has the lowest amount of traffic.
66+
6267
Monitoring
6368
``````````
6469

@@ -73,17 +78,20 @@ and :ref:`Monitoring and Alerts <arch-center-monitoring-alerts>`.
7378

7479
Deployment Resilience Testing
7580
`````````````````````````````
76-
7781
You can simulate various scenarios that require disaster recovery workflows in
7882
order to measure your preparedness for such events. Specifically, with |service|
7983
you can `test primary node failover <https://www.mongodb.com/docs/atlas/tutorial/test-resilience/test-primary-failover/#std-label-test-failover>`__
80-
and `simulate regional outages <https://www.mongodb.com/docs/atlas/tutorial/test-resilience/simulate-regional-outage/#std-label-test-outage>`__.
84+
and `simulate regional outages <https://www.mongodb.com/docs/atlas/tutorial/test-resilience/simulate-regional-outage/#std-label-test-outage>`__. We strongly recommend that you run these tests before
85+
deploying an application to production.
8186

8287
Cluster Termination Safeguards
8388
``````````````````````````````
8489

8590
You can prevent accidental deletion of |service| {+clusters+} by enabling
8691
`termination protection <https://www.mongodb.com/docs/atlas/cluster-additional-settings/#termination-protection>`__.
92+
Enabling termination protection is especially important when leveraging
93+
:abbr:`IaC (Infrastructure as Code)` tools like Terraform to ensure that a redeployment
94+
does not provision new infrastructure.
8795
To delete a cluster that has termination protection enabled, you must first
8896
disable termination protection. By default, Atlas disables termination protection
8997
for all clusters.
@@ -102,8 +110,8 @@ To learn more about database backup and snapshot retrieval, see `Back Up Your Cl
102110
Recommendations
103111
~~~~~~~~~~~~~~~
104112

105-
Use MongoDB 8.0
106-
````````````````
113+
Use MongoDB 8.0 or Later
114+
````````````````````````
107115

108116
.. include:: /includes/cloud-docs/cluster-resilience.rst
109117

@@ -114,7 +122,14 @@ We recommend that you use the most `current driver version <https://www.mongodb.
114122
for your application's programming language whenever possible. And while the
115123
default connection string |service| provides is a good place to start, you might
116124
want to tune it for performance in the context of your specific application
117-
and deployment architecture. `Tuning your connection pool settings <https://www.mongodb.com/docs/manual/tutorial/connection-pool-performance-tuning/>`__
125+
and deployment architecture.
126+
127+
For example, you might want to set a short :urioption:`connectTimeoutMS` for a
128+
microservice that provides a login capability, whereas you may want to set the
129+
``connectTimeoutMS`` to a much larger value if the application code is a long-running
130+
analytics job request against the cluster.
131+
132+
`Tuning your connection pool settings <https://www.mongodb.com/docs/manual/tutorial/connection-pool-performance-tuning/>`__
118133
is particularly important in the context of enterprise level application deployments.
119134

120135
Connection Pool Considerations for Performant Applications
@@ -181,6 +196,8 @@ and `retryable write <https://www.mongodb.com/docs/manual/core/retryable-writes/
181196
operations. When enabled, |service| retries read and write operations once as a
182197
safeguard against intermittent network outages.
183198

199+
.. _resiliency-read-write-concerns:
200+
184201
Configure Read and Write Concerns
185202
`````````````````````````````````
186203

0 commit comments

Comments
 (0)