429 Too Many Requests

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

תיאור הבעיה

יכול להיות שתראו את השגיאה הזו מהנתב, ולא תראו את 429 ממעקב, כי הבקשות לא מגיעות למעבדי ההודעות. שיחות ישירות לנתבים עצמם, מחזירות גם את הערך 429.

הודעות שגיאה

<html>
  <head> <title>429 Too Many Requests</title> </head>
  <body> <center> <h1>429 Too Many Requests</h1> </center> <hr> <center>server</center> </body>
</html>
    

סיבות אפשריות

בדרך כלל, בקובץ ההגדרות של nginx יש הגדרה של conf_load_balancing_load.balancing.driver.nginx.limit_conn=5000 שיכול להיות שהיא נמוכה מדי לחיבורים נכנסים.

אבחון

  1. בודקים את מגבלת ברירת המחדל בנתב nginx באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
            
  2. בודקים את הערכים של המארח הווירטואלי access_log כדי לראות אם יש 429שגיאות, ומוודאים שהן לא מגיעות ממעבדי ההודעות שלמעלה, אלא ישירות מהנתב:
    cd /opt/apigee/var/log/edge-router/nginx/ grep "429 " org~env-port_access_log
            

רזולוציה

  1. משתמשים בפקודה ssh כדי להתחבר לצמתי הנתב, אחד אחרי השני.
  2. פותחים את הקובץ הבא (אם הוא לא קיים, יוצרים אותו):
    /opt/apigee/customer/application/router.properties
            
  3. מוסיפים את השורה הבאה:
    conf_load_balancing_load.balancing.driver.nginx.limit_conn=25000
            
  4. שומרים את הקובץ.
  5. מוודאים שהבעלות על הקובץ היא apigee:apigee:
    sudo chown apigee:apigee router.properties
            
  6. מפעילים מחדש את הנתב:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
            
  7. מריצים את הפקודה הבאה כדי לוודא שהמאפיין מוגדר:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_load_balancing_load.balancing.driver.nginx.limit_conn
            
  8. חוזרים על הפעולה בכל נתב.