Antipattern: از شناسه های با کاردینالیته بالا در خط مشی های سهمیه استفاده کنید

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

سیاست سهمیه‌بندی برای شمارش تعداد درخواست‌های دریافتی توسط یک پروکسی API استفاده می‌شود. این قابلیت به ارائه‌دهندگان API این امکان را می‌دهد که محدودیت‌هایی را بر تعداد فراخوانی‌های API انجام‌شده توسط برنامه‌ها در یک بازه زمانی اعمال کنند.

سیاست سهمیه‌بندی می‌تواند شامل یک عنصر identifier باشد که «سطل» سهمیه‌بندی را که هر درخواست در آن شمارش می‌شود، مشخص می‌کند.

ضدالگو

هنگام استفاده از سیاست سهمیه‌بندی، از شناسه‌های با کاردینالیتی بالا استفاده نکنید.

کاردینالیتی به تعداد مقادیر داده منحصر به فرد در یک مجموعه اشاره دارد. یک شناسه با کاردینالیتی بالا، تعداد زیادی از مقادیر ممکن متمایز را دارد. شناسه‌های با کاردینالیتی بالا شامل شناسه‌های درخواست یا شناسه‌های جلسه منحصر به فرد هستند که با هر فراخوانی API تغییر می‌کنند.

استفاده از شناسه‌های با کاردینالیتی بالا می‌تواند به طور قابل توجهی اثربخشی اجرای سهمیه شما را تضعیف کند.

تأثیر

استفاده از شناسه‌های با کاردینالیتی بالا برای عنصر شناسه سیاست سهمیه‌بندی شما باعث می‌شود:

  • اجرای ناکارآمد سهمیه‌بندی: هر شناسه منحصر به فرد به عنوان یک شمارنده جداگانه در نظر گرفته می‌شود. اگر هر درخواست یک شناسه جدید و منحصر به فرد داشته باشد، سیستم سهمیه‌بندی شما اساساً برای هر فراخوانی API یک "سطل" جدید ایجاد می‌کند. این بدان معناست که محدودیت سهمیه‌بندی کلی شما به جای گروه‌های واقعی درخواست‌هایی که می‌خواهید محدود کنید، بر اساس شمارنده‌های تکی و یکبار مصرف اندازه‌گیری می‌شود و این امر باعث می‌شود که این سیاست برای کنترل ترافیک بی‌فایده باشد.
  • افزایش مصرف منابع: تولید و مدیریت تعداد زیادی از شمارنده‌های سهمیه‌بندی منحصر به فرد، فشار غیرضروری بر پلتفرم Apigee وارد می‌کند و منجر به افزایش استفاده از منابع و مشکلات احتمالی عملکرد می‌شود.
  • چالش‌های نظارت: وقتی داده‌ها در تعداد زیادی از شناسه‌های منحصر به فرد پراکنده باشند، نظارت و درک روندهای واقعی مصرف API دشوار می‌شود. شما توانایی مشاهده اینکه کدام برنامه‌ها، توسعه‌دهندگان یا محصولات منابع API شما را مصرف می‌کنند را از دست می‌دهید.

بهترین شیوه

شناسه‌هایی با کاردینالیتی کم تا متوسط ​​انتخاب کنید که نشان‌دهنده‌ی یک گروه‌بندی پایدار و معنادار برای اعمال سهمیه نیز باشند. این شناسه‌ها به شما کمک می‌کنند تا استفاده از API را به طور مؤثر مدیریت کنید و بینشی نسبت به ترافیک خود به دست آورید. مثال‌ها عبارتند از:

  • نام برنامه‌نویس
  • شناسه مشتری
  • نام محصول API

با شناسه‌های مناسب، سیاست سهمیه‌بندی شما می‌تواند ترافیک API را به طور مؤثرتری مدیریت کند، از مصرف بیش از حد ناخواسته جلوگیری کند و بینش روشنی از الگوهای استفاده ارائه دهد.