ضبط موضع البيانات باستخدام نقاط نهاية إقليمية

توضّح هذه الصفحة كيفية ضبط مكتبات برامج Cloud Firestore لتستخدِم نقطة نهاية إقليمية أو متعدّدة المناطق.

عند استخدام مكتبات عملاء Cloud Firestore، يمكنك استخدام أي من نقاط النهاية التالية:

  • نقطة النهاية العامة: بشكلٍ تلقائي، ترسل مكتبات برامج Cloud Firestore طلبات واجهة برمجة التطبيقات إلى نقطة نهاية خدمة عامة باسم firestore.googleapis.com. توجّه نقطة نهاية الخدمة العامة الطلب إلى قاعدة البيانات. أثناء التوجيه، قد يمر الطلب عبر خادم في موقع جغرافي مختلف عن الموقع الجغرافي لقاعدة البيانات.

  • نقطة نهاية إقليمية: تفرض نقطة النهاية الإقليمية قيودًا تضمن نقل البيانات وتخزينها ومعالجتها في Google Cloud منطقة محدّدة. لضمان معالجة نقطة نهاية الخدمة لطلبات تطبيقك في المنطقة نفسها التي توجد فيها قاعدة البيانات، حدِّد نقطة نهاية إقليمية في مكتبة العميل.Cloud Firestore

  • نقطة نهاية متعددة المناطق: تفرض نقطة النهاية المتعددة المناطق قيودًا تضمن تخزين البيانات ومعالجتها في منطقة متعددة محددة. لضمان معالجة نقطة نهاية الخدمة لطلبات تطبيقك في المنطقة المتعددة نفسها التي تستخدمها قاعدة البيانات، حدِّد نقطة نهاية متعددة المناطق في مكتبة البرامج.Cloud Firestore

تحديد نقطة نهاية إقليمية أو متعددة المناطق

طريقة إعداد نقطة نهاية إقليمية أو متعددة المناطق هي نفسها: عليك تقديم سلسلة نقطة النهاية عند تهيئة مكتبة العميل. توضّح الأمثلة التالية كيفية ضبط سلسلة نقطة النهاية باستخدام نقطة نهاية إقليمية (firestore.us-central1.rep.googleapis.com). لاستخدام نقطة نهاية متعدّدة المناطق، قدِّم سلسلة نقطة نهاية متعدّدة المناطق تتوافق مع الموقع الجغرافي لقاعدة البيانات (على سبيل المثال، firestore.us.rep.googleapis.com لـ nam5).

Java


import com.google.auth.oauth2.GoogleCredentials;
import com.google.cloud.firestore.Firestore;
import com.google.cloud.firestore.FirestoreOptions;


/**
 * Demonstrate how to set a regional endpoint.
 */
public class RegionalEndpointSnippets {

  /**
   * Create a client with a regional endpoint.
   **/
  public Firestore regionalEndpoint(String projectId, String endpoint) throws Exception {
    FirestoreOptions firestoreOptions =
        FirestoreOptions.newBuilder()
            .setProjectId(projectId)
            .setCredentials(GoogleCredentials.getApplicationDefault())
            // set endpoint like firestore.us-central1.rep.googleapis.com:443
            .setHost(endpoint)
            .build();
    Firestore dbWithEndpoint = firestoreOptions.getService();

    return dbWithEndpoint;
  }

}

Python

ENDPOINT = "firestore.africa-south1.rep.googleapis.com"
client_options = ClientOptions(api_endpoint=ENDPOINT)
db = firestore.Client(client_options=client_options)

cities_query = db.collection("cities").limit(2).get()
for r in cities_query:
    print(r)

دلالات نقاط النهاية الإقليمية والمتعددة المناطق

نقاط النهاية الإقليمية (REP):

تتيح Cloud Firestore نقاط نهاية إقليمية للمواقع الجغرافية الإقليمية المدرَجة هنا Cloud Firestore المواقع الجغرافية.

استخدِم التنسيق التالي لتحديد نقاط النهاية الإقليمية:

Java

  firestore.REGION_NAME.rep.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

Python

  firestore.REGION_NAME.rep.googleapis.com

Go

  firestore.REGION_NAME.rep.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

استبدِل REGION_NAME باسم اسم مضيف إقليمي.

في ما يلي بعض الأمثلة على أسماء المضيفين:

  • firestore.us-central1.rep.googleapis.com
  • firestore.europe-west1.rep.googleapis.com

نقاط النهاية المتعدّدة المناطق (MREP)

بالنسبة إلى نقاط النهاية المتعددة المناطق، استخدِم us للموقعَين الجغرافيَين nam5 وnam7، وeu للموقع الجغرافي eur3 (راجِع المواقع الجغرافية المتعددة المناطق).

Java

  firestore.us.rep.googleapis.com:443
  firestore.eu.rep.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

Python

  firestore.us.rep.googleapis.com
  firestore.eu.rep.googleapis.com

Go

  firestore.us.rep.googleapis.com:443
  firestore.eu.rep.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

القيود

نقاط النهاية المستندة إلى الموقع الجغرافي (تم إيقافها نهائيًا)

تم الآن إيقاف نقاط النهاية المستندة إلى الموقع الجغرافي نهائيًا. استخدِم نقاط نهاية إقليمية أو متعددة المناطق بدلاً من ذلك.

كانت Cloud Firestore تتيح سابقًا نقاط نهاية جغرافية بالتنسيق التالي:

Java

  REGION_NAME-firestore.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

Python

  REGION_NAME-firestore.googleapis.com

Go

  REGION_NAME-firestore.googleapis.com:443

تأكَّد من تحديد رقم المنفذ مع نقطة النهاية.

استبدِل REGION_NAME باسم مضيف إقليمي أو متعدد المناطق.

في ما يلي بعض الأمثلة على أسماء المضيفين:

  • eur3-firestore.googleapis.com
  • nam5-firestore.googleapis.com
  • europe-west6-firestore.googleapis.com
  • asia-northeast2-firestore.googleapis.com

للحصول على قائمة كاملة بأسماء المضيفين المتعدّدة المناطق والمناطقية، اطّلِع على مواقع Cloud Firestore.

حظر استخدام نقطة نهاية واجهة برمجة التطبيقات العامة

للمساعدة في فرض استخدام نقاط النهاية الإقليمية والمتعددة المناطق، استخدِم قيد سياسة المؤسسة constraints/gcp.restrictEndpointUsage لحظر الطلبات المقدَّمة إلى نقطة نهاية واجهة برمجة التطبيقات العامة. لمزيد من المعلومات، يُرجى الاطّلاع على حصر استخدام نقاط النهاية.