أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى
مستندات Apigee X. info
تنتقل طلبات البيانات من واجهة برمجة التطبيقات التي تقدّمها تطبيقات العميل عبر مكوّنات مختلفة في Apigee Edge قبل أن تصل إلى الخدمات الخلفية. تتوقّع معظم تطبيقات العميل تلقّي الردود على هذه الطلبات في الوقت المناسب.
للحصول على ردود في الوقت المناسب، يتم ضبط قيم المهلة الزمنية للإدخال/الإخراج في كل المكوّنات التي تمرّ بها طلبات واجهة برمجة التطبيقات. إذا استغرقت أي من المكوّنات في المسار وقتًا أطول من المكوّن السابق، ستنتهي مهلة المكوّن السابق وسيردّ برسالة خطأ 504 Gateway Timeout.
أثناء ضبط المهلة، يجب ضبط القيم في كل مكوّن بعناية فائقة، وإلا قد يؤدي ذلك إلى حدوث أخطاء مهلة البوابة 504.
يوضّح هذا المستند أفضل الممارسات لإعداد مهلة الإدخال/الإخراج على المكوّنات المختلفة التي تمرّ من خلالها طلبات البيانات من واجهة برمجة التطبيقات في Apigee Edge.
أفضل الممارسات لإعداد مهلة الإدخال/الإخراج
ننصحك باتّباع أفضل الممارسات التالية عند ضبط مهلة الإدخال/الإخراج:
- المكوّن الأول: استخدِم دائمًا أعلى مهلة في المكوّن الأول ضمن مسار طلب واجهة برمجة التطبيقات، وهو تطبيق العميل في Apigee Edge.
- المكوّن الأخير: استخدِم دائمًا أقل مهلة في المكوّن الأخير في مسار طلب واجهة برمجة التطبيقات، وهو خدمة الخلفية في Apigee Edge.
- بين المكوّنات: تأكَّد من وجود فرق لا يقل عن ثانيتين أو ثلاث ثوانٍ في قيمة المهلة التي تم ضبطها في كل مكوّن بين المكوّن الأول والمكوّن الأخير في المسار.
- الموجّه: من الممارسات الجيدة دائمًا ضبط (تعديل) قيمة المهلة المحدّدة للإدخال/الإخراج لمضيف افتراضي معيّن بدلاً من ضبطها على الموجّه. يضمن ذلك ألا تؤثّر قيمة المهلة الجديدة إلا في خوادم API الوكيلة التي تستخدم المضيف الافتراضي المحدّد، وليس في جميع خوادم API الوكيلة التي يقدّمها جهاز التوجيه.
لا تضبط (تعدّل) مهلة الإدخال/الإخراج على جهاز التوجيه إلا إذا كنت متأكدًا تمامًا من أنّ قيمة مهلة الإدخال/الإخراج الجديدة مطلوبة أو قابلة للتطبيق على جميع خوادم وكيل واجهة برمجة التطبيقات التي تعمل على جهاز التوجيه.
- معالج الرسائل: من أفضل الممارسات دائمًا ضبط (تعديل) قيمة المهلة المحدّدة للإدخال/الإخراج
لخادم وكيل API معيّن بدلاً من ضبطها على "معالج الرسائل". يضمن ذلك ألا تؤثّر قيمة المهلة الجديدة إلا في خادم وكيل واجهة برمجة التطبيقات المحدّد وليس في جميع خوادم وكلاء واجهات برمجة التطبيقات التي يعالجها "معالج الرسائل".
لا تضبط (تعدّل) مهلة الإدخال/الإخراج في "معالج الرسائل" إلا إذا كنت متأكدًا تمامًا من أنّ قيمة مهلة الإدخال/الإخراج الجديدة مطلوبة أو قابلة للتطبيق على جميع خوادم وكيل واجهة برمجة التطبيقات التي تعمل على "معالج الرسائل".
أمثلة على السيناريوهات
يمكن أن تساعدك السيناريوهات الواردة في هذا القسم في فهم كيفية ضبط قيم المهلة المحدّدة لعمليات الإدخال والإخراج بشكلٍ صحيح.
السيناريو 1: الطلبات الموجّهة إلى Apigee Edge مباشرةً من تطبيقات العميل
يوضّح هذا القسم أفضل الممارسات التي يجب اتّباعها أثناء ضبط قيم المهلة في عملية إعداد Apigee Edge التي لا تتضمّن أي مكوّنات وسيطة بين تطبيق العميل وApigee Edge وبين Apigee Edge وخادم الخلفية.
مثال على إعداد Apigee بدون مكوّنات وسيطة
إذا تم إعداد Apigee Edge كما هو موضّح في الرسم البياني أعلاه، بدون أيّ مكوّنات وسيطة، استخدِم أفضل الممارسات التالية:
- تطبيق العميل هو المكوّن الأول في مسار العمل. يجب ضبط قيمة أعلى مهلة على العميل.
- خادم الخلفية هو المكوّن الأخير في التدفق. يجب ضبط قيمة أدنى مهلة على خادم الخلفية.
- اضبط قيم المهلة على كل مكون من المكونات بالترتيب التالي:
يوضّح المثال التالي قيم المهلة التي تم ضبطها على المكوّنات المختلفة وفقًا للإرشادات المذكورة أعلاه لتجنُّب أي مشاكل:
السيناريو 2: طلبات إلى Apigee Edge من تطبيقات العميل من خلال المكوّنات الوسيطة
يوضّح هذا القسم أفضل الممارسات التي يجب اتّباعها أثناء ضبط قيم المهلة في إعداد Apigee Edge حيث يتوفّر مكوّن وسيط واحد أو أكثر بين تطبيق العميل وApigee Edge، وكذلك بين Apigee Edge وخادم الخلفية.
يمكن أن تكون المكوّنات الوسيطة عبارة عن جهاز موازنة الحمل أو شبكة توصيل المحتوى (CDN) أو NGINX أو غير ذلك.
مثال على إعداد Apigee مع مكوّن وسيط واحد بين العميل وApigee Edge وبين Apigee Edge وخادم الخلفية
إذا تم إعداد Apigee Edge كما هو موضّح في الرسم البياني أعلاه، مع مكوّن وسيط واحد أو أكثر، اتّبِع أفضل الممارسات التالية:
- تطبيق العميل هو المكوّن الأول في مسار العمل. يجب ضبط أعلى قيمة للمهلة على العميل.
- خادم الخلفية هو المكوّن الأخير في التدفق. يجب ضبط أدنى قيمة للمهلة على خادم الخلفية.
- اضبط قيم المهلة على كل المكوّنات، بما في ذلك المكوّنات الوسيطة، بالترتيب التالي:
يوضّح المثال التالي قيم المهلة التي تم ضبطها على المكوّنات المختلفة وفقًا للإرشادات المذكورة أعلاه لتجنُّب أي مشاكل: