تكوين الدعم متعدد المناطق في SDK

مكتمل

في .NET SDK ل Azure Cosmos DB ل NoSQL، تكوين المنطقة المفضلة للكتابة إليها هو مسألة تحديد بين خاصيتين مختلفتين في كائن CosmosClientOptions .

تلميح

إذا لم تحدد منطقة مفضلة، فستتحول SDK افتراضياً إلى المنطقة الأساسية لحسابك. المنطقة الأساسية هي المنطقة الأولى في قائمة المنطقة، وهي عادةً المنطقة التي حددتها أولاً عند إنشاء حساب Azure Cosmos DB.

تحديد منطقة كتابة واحدة

تحدد الخاصية ApplicationRegion المنطقة التي تريد أن تستخدمها SDK لعملياتها. على نحو فعال، هذه هي المنطقة القابلة للكتابة التي ستستخدمها. في هذا المثال، المنطقة المحددة هي غرب الولايات المتحدة.

CosmosClientOptions options = new()
{
    ApplicationRegion = Regions.WestUS
};
using CosmosClient client = new(connectionString, options);

يمكنك أيضاً استخدام CosmosClientBuilder لتكوين المنطقة المفضلة.

using CosmosClient client = builder
    .WithApplicationRegion(Regions.WestUS)
    .Build();

بمجرد ربط العميل بـ Azure Cosmos DB، سيسحب العميل قائمة بالمناطق ويحدد أولوياتها حسب القرب من المنطقة التي اخترتها. إذا لم تكن المنطقة التي حددتها متوفرة، فسيجرب العميل المناطق البديلة بالترتيب المحدد.

إنشاء قائمة مناطق الكتابة المفضلة

إذا كنت تريد إنشاء قائمة المناطق ذات الأولوية الخاصة بك لتجربة عمليات القراءة والكتابة، فيمكنك استخدام الخاصية ApplicationPreferredRegions. في المثال الأول، يتم تعيين هذه الخاصية إلى قائمة من ثلاث مناطق بترتيب أولويات مخصص.

CosmosClientOptions options = new()
{
    ApplicationPreferredRegions = new List<string>
    {
        Regions.WestUS,
        Regions.AustraliaSoutheast,
        Regions.NorthEurope
    }
};
using CosmosClient client = new(connectionString, options);

مرة أخرى، يمكن تطبيق هذا المثال نفسه باستخدام فئة CosmosClientBuilder.

using CosmosClient client = builder
    .WithApplicationPreferredRegions(
        new List<string>
        {
            Regions.WestUS,
            Regions.AustraliaSoutheast,
            Regions.NorthEurope
        }
    )
    .Build();