Create an AppProfile that uses multi-cluster routing.
Read/write requests are routed to the nearest cluster in the instance, and will fail over to the nearest cluster that is available in the event of transient errors or delays. Clusters in a region are considered equidistant. Choosing this option sacrifices read-your-writes consistency to improve availability.
Parameters
Name
Description
profile_id
std::string
The unique name of the AppProfile.
cluster_ids
std::vector< std::string >
The set of clusters to route to. The order is ignored; clusters will be tried in order of distance. If left empty, all clusters are eligible.
Create an AppProfile that uses single cluster routing.
Unconditionally routes all read/write requests to a specific cluster. This option preserves read-your-writes consistency but does not improve availability.
Parameters
Name
Description
profile_id
std::string
The unique name of the AppProfile.
cluster_id
std::string
The cluster to which read/write requests are routed.
allow_transactional_writes
bool
Whether or not CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-03-14 UTC."],[[["The provided content outlines the different versions of the `AppProfileConfig` class, with the latest release candidate being version 2.37.0-rc, and includes versions from 2.36.0 to 2.11.0."],["The `AppProfileConfig` class is used to configure an application profile, and it has constructors and several functions to manage the profile's settings, such as setting the description, etag, or ignore warnings."],["The class can be configured to use multi-cluster routing with the `MultiClusterUseAny` function, which routes requests to the nearest cluster, or single-cluster routing with the `SingleClusterRouting` function, which routes all requests to a specific cluster."],["The `SingleClusterRouting` method allows for specifying whether transactional writes are allowed, which is important to manage consistency across multiple clusters, and both routing methods will take the unique AppProfile name."],["The class provides functions `as_proto()` in const and non const references to return the profile."]]],[]]