הגדרת מספר מקסימלי של בקשות בו-זמניות לכל מופע

כדי להבין את ההגדרה של מספר הבקשות המקסימלי בו-זמנית לכל מופע, אפשר לקרוא את מסמך ההסבר.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות להגדרה ולפריסה של שירותי Cloud Run, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

אם אתם פורסים שירות או פונקציה מקוד מקור, אתם צריכים גם לקבל תפקידים נוספים בפרויקט ובחשבון השירות של Cloud Build.

רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם שירות Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח ב-Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.

הגדרת מספר מקסימלי של בקשות בו-זמנית לכל מופע

כל שינוי בהגדרות מוביל ליצירה של גרסה חדשה. גם גרסאות מתוקנות עתידיות יקבלו את הגדרת התצורה הזו באופן אוטומטי, אלא אם תבצעו עדכונים מפורשים כדי לשנות אותה.

בשירותי Cloud Run, אפשר להגדיר את מספר הבקשות המקסימלי בו-זמנית לכל מופע באמצעות Google Cloud המסוף, שורת הפקודה gcloud או קובץ ‎ .yaml כשיוצרים שירות חדש או פורסים עדכון חדש:

המסוף

  1. נכנסים ל-Cloud Run במסוף Google Cloud :

    כניסה ל-Cloud Run

  2. בתפריט הניווט של Cloud Run, בוחרים באפשרות Services (שירותים) ולוחצים על Deploy container (פריסת קונטיינר) כדי להגדיר שירות חדש. אם אתם מגדירים שירות קיים, לוחצים על השירות ואז על עריכה ופריסה של עדכון חדש.

  3. אם אתם מגדירים שירות חדש, ממלאים את דף ההגדרות הראשוניות של השירות ואז לוחצים על Containers, Networking, Security (מאגרי נתונים, רשתות, אבטחה) כדי להרחיב את דף הגדרות השירות.

  4. לוחצים על הכרטיסייה מאגר תגים.

    תמונה

    • מזינים את הערך הרצוי של בקשות מקסימליות בו-זמנית לכל מופע בתיבת הטקסט בקשות מקסימליות לכל מאגר.
  5. לוחצים על יצירה או על פריסה.

gcloud

כדי להגדיר את המספר המקסימלי של בקשות בו-זמניות לכל מכונה, משתמשים בפקודה הבאה:

gcloud run services update SERVICE --concurrency CONCURRENCY

מחליפים את מה שכתוב בשדות הבאים:

  • SERVICE: השם של השירות.
  • CONCURRENCY: המספר המקסימלי של בקשות בו-זמנית לכל מופע. לדוגמה, הקוד הבא מגדיר מקסימום של בקשה אחת בו-זמנית:

    gcloud run services update SERVICE --concurrency 1

שינוי המספר המקסימלי של בקשות בו-זמניות לכל מופע של שירות נתון יתעד את ההגדרה הזו בגרסה חדשה.

כדי לחזור למספר ברירת המחדל המקסימלי של בקשות בו-זמניות לכל מכונה (80), משתמשים בפקודה

gcloud run services update SERVICE --concurrency default

מחליפים את SERVICE בשם השירות שאתם מגדירים.

YAML

  1. אם אתם יוצרים שירות חדש, דלגו על השלב הזה. כדי לעדכן שירות קיים, מורידים את הגדרות ה-YAML שלו:

    gcloud run services describe SERVICE --format export > service.yaml
  2. מעדכנים את המאפיין containerConcurrency:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
    spec:
      template:
        metadata:
          name: REVISION
        spec:
          containerConcurrency: CONCURRENCY

    מחליפים את מה שכתוב בשדות הבאים:

    • SERVICE: השם של שירות Cloud Run
    • IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה, us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמט LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG .
    • CONCURRENCY: המספר המקסימלי של בקשות בו-זמנית לכל מופע.
    • REVISION עם שם חדש לגרסה או למחוק אותה (אם היא קיימת). אם מספקים שם חדש לגרסה, חובה שהוא יעמוד בקריטריונים הבאים:
      • מתחיל ב-SERVICE-
      • מכיל רק אותיות קטנות, מספרים ו-
      • לא מסתיים ב--
      • לא חורג מ-63 תווים
  3. יוצרים או מעדכנים את השירות באמצעות הפקודה הבאה:

    gcloud run services replace service.yaml

    אם קיים קובץ service.yaml, הפקודה gcloud run services replace משתמשת בו כברירת מחדל.

Terraform

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

מוסיפים את הטקסט הבא למשאב google_cloud_run_v2_service בקובץ התצורה של Terraform:

resource "google_cloud_run_v2_service" "default" {
  name     = "cloudrun-service-concurrency"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    containers {
      image = "us-docker.pkg.dev/cloudrun/container/hello"
    }
    # Maximum concurrent requests
    max_instance_request_concurrency = 80
  }
}

מחליפים את 80 במספר המקסימלי הרצוי של בקשות בו-זמניות.

הצגת הגדרות של שימוש בו-זמני

כדי לראות את הגדרות המקבילות הנוכחיות של שירות Cloud Run:

המסוף

  1. נכנסים לדף Services של Cloud Run במסוף Google Cloud :

    כניסה ל-Cloud Run

  2. לוחצים על השירות שרוצים לראות כדי לפתוח את הדף פרטי השירות.

  3. לוחצים על הכרטיסייה עדכונים.

  4. בחלונית הפרטים שמשמאל, הגדרת הבו-זמניות מופיעה בכרטיסייה Container.

gcloud

  1. משתמשים בפקודה הבאה:

    gcloud run services describe SERVICE
  2. מחפשים את הגדרת ההפעלה בו-זמנית בתצורה שמוחזרת.