شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید . اطلاعات
درخواستهای API که توسط برنامههای کلاینت ارائه میشوند، قبل از رسیدن به خدمات باطن، از طریق اجزای مختلف در Apigee Edge جریان مییابند. اکثر برنامه های کاربردی مشتری انتظار دارند که پاسخ به این درخواست ها به موقع دریافت شود.
برای دستیابی به پاسخهای به موقع، مقادیر وقفه ورودی/خروجی در هر یک از مؤلفههایی که درخواستهای API از طریق آنها جریان مییابد، تنظیم میشوند. اگر هر یک از مؤلفههای جریان بیشتر از مؤلفه قبلی طول بکشد، زمان مؤلفه قبلی تمام میشود و با خطاهای 504 Gateway Timeout پاسخ میدهد.
هنگام پیکربندی مهلت زمانی، مقادیر باید در هر یک از مؤلفه ها با نهایت دقت پیکربندی شوند، در غیر این صورت می تواند منجر به خطاهای 504 Gateway Timeout شود.
این سند بهترین روشها را برای پیکربندی وقفه ورودی/خروجی در مؤلفههای مختلفی که درخواستهای API از طریق آنها در Apigee Edge جریان مییابد، شرح میدهد.
بهترین روش ها برای پیکربندی وقفه ورودی/خروجی
هنگام پیکربندی مهلت I/O، بهترین روش های زیر را در نظر بگیرید:
- مؤلفه اول: همیشه از بالاترین زمان در اولین مؤلفه در جریان درخواست API استفاده کنید، که برنامه Client در Apigee Edge است.
- آخرین مؤلفه: همیشه از کمترین زمان در آخرین مؤلفه در جریان درخواست API، که سرویس Backend در Apigee Edge است، استفاده کنید.
- بین مؤلفه ها: اطمینان حاصل کنید که حداقل 2-3 ثانیه در مقدار زمان تنظیم شده در هر مؤلفه بین اولین مؤلفه و آخرین مؤلفه در جریان اختلاف وجود دارد.
- روتر: همیشه یک تمرین خوب برای پیکربندی (تغییر) مقدار زمان I/O برای یک میزبان مجازی خاص به جای پیکربندی آن در روتر است. این تضمین میکند که مقدار زمانبندی جدید فقط بر آن دسته از پراکسیهای API تأثیر میگذارد که از میزبان مجازی خاص استفاده میکنند و نه همه پراکسیهای API که توسط روتر ارائه میشوند.
فقط زمانی که مطمئن هستید که مقدار وقفه ورودی/خروجی جدید برای همه پراکسیهای API در حال اجرا روی روتر لازم است یا قابل اعمال است، مهلت زمانی ورودی/خروجی را روی روتر پیکربندی کنید (اصلاح کنید).
- پردازشگر پیام: پیکربندی (تغییر) مقدار وقفه ورودی/خروجی برای یک پروکسی API خاص، به جای پیکربندی آن در پردازشگر پیام، همیشه تمرین خوبی است. این تضمین میکند که مقدار وقفه جدید فقط بر پروکسی API خاص تأثیر میگذارد و نه همه پراکسیهای API که توسط پردازشگر پیام ارائه میشوند.
تنها زمانی که مطمئن هستید که مقدار وقفه ورودی/خروجی جدید برای همه پراکسیهای API در حال اجرا بر روی پردازشگر پیام لازم است یا قابل اعمال است، مهلت زمانی I/O را در پردازشگر پیام پیکربندی کنید (اصلاح کنید).
سناریوهای نمونه
سناریوهای موجود در این بخش می توانند به شما در درک نحوه تنظیم صحیح مقادیر وقفه ورودی/خروجی کمک کنند.
سناریو 1: درخواست به Apigee Edge از برنامه های مشتری به طور مستقیم
این بخش بهترین روشهایی را که باید هنگام تنظیم مقادیر زمانبندی در یک راهاندازی Apigee Edge دنبال کنید، توضیح میدهد که در آن هیچ مؤلفه واسطهای بین برنامه مشتری و Apigee Edge و بین Apigee Edge و سرور باطن شما وجود ندارد.
نمونه راه اندازی Apigee بدون اجزای میانی
اگر Apigee Edge همانطور که در نمودار بالا نشان داده شده است، بدون اجزای میانی تنظیم شده است، از بهترین شیوه های زیر استفاده کنید:
- برنامه مشتری اولین مؤلفه در جریان است. بالاترین مقدار فاصله زمانی باید روی مشتری تنظیم شود.
- سرور باطن آخرین مؤلفه در جریان است. کمترین مقدار زمان پایان باید در سرور باطن تنظیم شود.
- مقادیر زمانبندی هر یک از مؤلفهها را به ترتیب زیر پیکربندی کنید:
مثال زیر مقادیر مهلت زمانی تعیین شده بر روی اجزای مختلف را طبق دستورالعمل های داده شده در بالا نشان می دهد تا از هر گونه مشکلی جلوگیری شود:
سناریوی 2: درخواست به Apigee Edge از برنامه های مشتری از طریق مؤلفه های میانی
این بخش بهترین روشهایی را که باید هنگام تنظیم مقادیر زمانبندی در یک راهاندازی Apigee Edge دنبال کنید، توضیح میدهد که در آن یک یا چند جزء میانی بین برنامه مشتری و Apigee Edge و همچنین بین Apigee Edge و سرور باطن شما وجود دارد.
اجزای میانی می توانند یک متعادل کننده بار، شبکه تحویل محتوا ( CDN )، NGINX و غیره باشند.
نمونه راه اندازی Apigee با یک جزء میانی بین Client و Apigee Edge و بین Apigee Edge و سرور باطن
اگر Apigee Edge همانطور که در نمودار بالا نشان داده شده است، با یک یا چند جزء میانی تنظیم شده است، از بهترین روش های زیر استفاده کنید:
- برنامه مشتری اولین مؤلفه در جریان است. بالاترین مقدار فاصله زمانی باید روی مشتری تنظیم شود.
- سرور باطن آخرین مؤلفه در جریان است. کمترین مقدار زمان پایان باید در سرور باطن تنظیم شود.
- مقادیر زمانبندی هر یک از مؤلفهها، از جمله مؤلفههای میانی، را به ترتیب زیر پیکربندی کنید:
مثال زیر مقادیر مهلت زمانی تعیین شده بر روی اجزای مختلف را طبق دستورالعمل های داده شده در بالا نشان می دهد تا از هر گونه مشکلی جلوگیری شود: