حدود استخدام الوكلاء
تحدد حدود استخدام الخادم الوكيل حجم البيانات الذي تستطيع الخدمة نقله لك، وسرعة إرسال العمل عبرها، والوجهات التي ستصل إليها. وقد تنطبق قواعد متعددة على المهمة نفسها. فقد يصاحب حجم البيانات غير المحدود حد للاتصالات المتزامنة وقيود على مواقع أو منافذ معينة. ويتحكم كل شرط في جانب مختلف من الخدمة.
عند اختيار خدمة وكلاء، قارن هذه الشروط بالعمل الذي ينفذه تطبيقك فعلًا. ولا يكشف عدد IP أو اختبار ناجح واحد إلا جزءًا من الصورة. ويسهل فهم ما يقيسه كل حد تقدير السعة وتحديد الشرط الذي يحتاج إلى التغيير عندما لا تلائم المهمة الخدمة.
ما الذي يمكن للمزود تقييده
تصف بعض الحدود موردًا تستهلكه خلال فترة. وتضبط أخرى عبء العمل في لحظة معينة، أو تقرر السماح بالاتصال أصلًا. وتفيد الفروق التالية حتى عندما تعلن الخطة عن معيار أو اثنين منها فقط.
| المعيار | ما يُقاس | ما يحدده |
|---|---|---|
| حجم البيانات | البايتات المنقولة | غير محدود أو ذو سقف، بحسب المنتج |
| حصة الطلبات | العمليات المحسوبة خلال فترة الحصة | حجم العمل المحسوب المشمول |
| معدل نقل البيانات | بتات أو بايتات في الثانية | سرعة إمكان نقل البيانات |
| معدل الطلبات | طلبات في الثانية أو الدقيقة | وتيرة السماح بإرسال عمل جديد |
| الاتصالات المتزامنة | الاتصالات المحسوبة في الوقت نفسه | عدد الاتصالات التي يمكن أن تبقى مفتوحة معًا |
| الوصول إلى الوجهات | الموقع أو العنوان أو العملية المطلوبة | الموارد والوظائف المسموح بها |
| الوصول إلى المنافذ | منفذ الوجهة وبروتوكول النقل | الخدمات الشبكية التي يستطيع الوكيل الوصول إليها |
يستخدم المزود هذه القواعد لتوزيع سعة الشبكة وموارد المعالجة وضبط التكاليف وتقييد النشاط غير المرغوب. وتختلف آثارها: فرفع حد الاتصال يسمح بمزيد من الاتصالات دفعة واحدة، بينما يغير الإذن بالوصول إلى وجهة محظورة نوع المهمة التي تستطيع الخدمة تنفيذها. ولا يغير تعديل شرط واحد بقية الشروط تلقائيًا.
الاتصالات المتزامنة
يحدد حد الاتصالات المتزامنة عدد الاتصالات التي تستطيع البقاء مفتوحة دفعة واحدة. وقد يفتح المتصفح أو تطبيق آخر عدة اتصالات لمهمة واحدة. لذلك لا يخبرك عدد علامات التبويب أو الملفات الشخصية أو خيوط البرنامج بدقة بمقدار الحصة المستخدم.
يمكن أن تبقى الاتصالات مفتوحة بين الطلبات، ويمكن أن ينقل HTTP/2 عدة طلبات عبر اتصال واحد. ولا يحرر إرسال طلبات أقل في الدقيقة الاتصالات المشغولة بالضرورة. ويشرح مقال الاتصالات المتزامنة ما يستهلك هذه الحصة ولماذا تختلف عن عدد الطلبات.
قد تؤثر الحدود بعضها في بعض. فإذا استغرقت استجابة كبيرة وقتًا أطول للنقل، فقد يبقى اتصالها مشغولًا مدة أطول. وعندئذ قد يصل برنامج يواصل بدء عمل جديد إلى حد اتصالاته، حتى مع بقاء معدل الطلبات نفسه. وقد تزيد إضافة عمل متوازٍ حينها الانتظار والإخفاقات دون رفع معدل الإنجاز.
المواقع والتطبيقات المحظورة
يمكن للمزود تقييد الوصول إلى مواقع أو عناوين أو عمليات معينة. وقد تكون الوجهة في قائمة حظره حتى مع بيانات غير محدودة وسعة اتصال متاحة. وقد يختلف الوصول أيضًا بين منتجات المزود نفسه. ويشرح مقال المواقع والتطبيقات المحظورة كيف تنشأ هذه القوائم وما يحدد الوصول إلى مورد معين.
قد يستخدم التطبيق عدة وجهات: فتفتح صفحته الرئيسية بينما تفشل وظيفة منفصلة. ويمكن لموقع الوجهة أيضًا فرض قيوده الخاصة حتى عندما يسمح مزود الوكلاء بالوصول. ولفهم الإخفاق، حدد أولًا المورد غير المتاح والجهة التي رفضت الطلب.
المنافذ المحظورة
لا يثبت الوصول إلى موقع إتاحة كل خدمة شبكية على الخادم نفسه. فقد يسمح المزود ببيانات الويب مع حظر منفذ إرسال البريد. والمهم هنا منفذ الوجهة الذي يطلبه التطبيق. ويشرح مقال المنافذ المحظورة اختلافه عن منفذ الاتصال بالوكيل نفسه.
دعم بروتوكول النقل جانب آخر من الإذن. إذ إن TCP وUDP طريقتان مختلفتان لنقل البيانات، ولا يثبت الوصول إلى منفذ TCP مرقم الوصول إلى المنفذ نفسه في UDP. ويجب أن يدعم المنتج بروتوكول النقل المطلوب ويسمح به. ولا توفر زيادة IP أو حصة الاتصالات إذنًا مفقودًا.
حجم البيانات وسرعة النقل وأعداد الطلبات
حجم البيانات
قد تكون البيانات غير محدودة الحجم أو تُباع بحصة، بحسب المزود والمنتج. ويبيع بعض المزودين كمية ثابتة، مثل باقة شهرية بالغيغابايت. ولهذه الباقة، تحقق من مدة الصلاحية وموعد تجدد الحصة وترحيل البيانات غير المستخدمة. وتسري قواعد المحاسبة هذه على المنتجات ذات حصص البيانات، وليست شرطًا عامًا للوصول عبر الوكلاء.
لا يمثل حجم النتيجة المحفوظة تقديرًا موثوقًا لحركة البيانات. فقد يتطلب استخراج نص قصير، كسعر أو اسم منتج، تنزيل صفحة كاملة. وقد يطلب المتصفح صورًا وسكربتات وملفات أخرى أيضًا. وقد تعيد المحاولات المتكررة نقل البيانات. ويساعد قياس التطبيق الفعلي في تقدير حمل الشبكة. وإذا حوسب المنتج بحسب الحجم، فتحقق أيضًا من البايتات المنقولة التي يعدها المزود.
سرعة النقل
يضبط حد معدل النقل حجم البيانات المار في وحدة زمنية. ويُعبر عنه عادةً بالبتات في الثانية، مثل Mbps، أو البايتات في الثانية، مثل MB/s. ويحتوي البايت الواحد على ثمانية بتات: تقابل 80 Mbps سرعة 10 MB/s قبل احتساب عبء البروتوكول. وهذه وحدات سرعة؛ أما الحصة الشهرية بوحدة GB فتجيب عن سؤال منفصل.
يهم نطاق السرعة المعلنة. فتحديد سرعة معينة لمنفذ الخادم لا يثبت حصول كل عميل أو اتصال على ذلك المعدل. وقد تشترك عمليات نقل متعددة في حصة واحدة. وتعتمد السرعة الفعلية أيضًا على المسار وخادم الوجهة واتصال العميل نفسه، لذا لا يعد سقف المزود نتيجة مضمونة لكل تنزيل.
يهم زمن الاستجابة إلى جانب سرعة النقل. فقد يجعل الخادم التطبيق ينتظر قبل إرسال استجابة صغيرة، حتى مع وفرة سعة نقل البايتات. وتتأثر التنزيلات الكبيرة أكثر بمعدل النقل المستمر، بينما قد تتأثر الأعمال المكونة من طلبات قصيرة كثيرة أكثر بتأخر الردود ومعدل الطلبات المسموح.
حصة الطلبات ومعدلها
تحدد حصة الطلبات عدد العمليات المحسوبة المشمولة. ويحدد حد معدل الطلبات مدى تقارب إرسالها زمنيًا. ولا يثبت الرصيد المتبقي الكبير إمكان استخدامه كله في دفعة قصيرة واحدة. ويمكن لهذين الحدين الوجود بصورة مستقلة، بما في ذلك في منتج لا يحاسب على حجم البيانات.
تحتاج العملية المحسوبة أيضًا إلى تعريف واضح. فالنقرة وزيارة الصفحة وطلب HTTP ومهمة جمع بيانات مكتملة أحداث مختلفة. وقد تولد زيارة صفحة واحدة طلبات HTTP كثيرة؛ وقد تشمل مهمة API مُدارة واحدة عدة محاولات ينفذها المزود. ويتوقف استهلاك هذه المحاولات حصة العميل على قواعد محاسبة المنتج.
ولحد المعدل أيضًا نافذة زمنية وقواعد للدفعات القصيرة. فقسمة حد الدقيقة على ستين تعطي متوسطًا، لكنها لا تكشف كيفية معاملة الخدمة دفعة مرسلة مرة واحدة. وقد يلائم توزيع العمل المسموح على الزمن حد المعدل دون تغيير حجمه الإجمالي، لكنه لا يستعيد حصة طلبات مستهلكة بالفعل.
أي حساب أو IP أو منتج يشارك الحد
لا يفيد العدد إلا عندما تعرف ما يشترك فيه. فقد يطبق المزود حدًا على حساب أو طلب شراء أو IP وكيل منفرد أو IP عميل مسموح به أو مجموعة محددة أخرى. فمثلًا، تتشارك البرامج المستخدمة للحساب حصته الإجمالية لمعدل النقل. ولا ينشئ منح هذه البرامج عناوين خروج مختلفة حصة مستقلة لكل منها.
قد تسري عدة مستويات معًا. فقد تضع الخدمة حدًا أقصى لكل IP وكيل وآخر للباقة كلها. وقد يفيد توزيع العمل على العناوين في القيد الأول، لكن إجمالي الباقة يظل ساريًا. وقد تتشارك أيضًا عدة أجهزة تصل إلى الإنترنت عبر IP عام للعميل الحد المرتبط بذلك العنوان.
قواعد المنتج مهمة كذلك. فقد تكون لاتصال وكيل مباشر وAPI مُدارة لجمع بيانات الويب وشبكة أخرى يبيعها المزود نفسه حصص وأذونات مختلفة. وقد تكون الوحدة التي يعدها API مهمة أو نتيجة، لا اتصالًا شبكيًا. اقرأ حدود المنتج الذي تنوي استخدامه، بما في ذلك أي إعدادات خاصة بحسابك.
ماذا يحدث عند بلوغ الحد
تعتمد استجابة الخدمة على القاعدة. فعند سقف معدل النقل، يمكن للبيانات مواصلة الحركة بسرعة محدودة. وعند حد معدل الطلبات، قد ينتظر العمل الزائد أو يُرفض. وعند حد الاتصالات، قد ترفض الخدمة الاتصالات الجديدة مع بقاء الاتصالات القائمة قابلة للاستخدام. وللمنتجات ذات حصص البيانات أو الطلبات، قد يتطلب نفاد الحصة التجديد أو شراءً إضافيًا؛ وتحدد شروط المزود الخيارات المتاحة.
لذلك تحتاج كلمة «غير محدود» إلى ما تصفه: بيانات أم طلبات أم اتصالات. ويصف كل منها معيارًا واحدًا. فقد تظل لخطة البيانات غير المحدودة سرعة نقل محدودة وحد اتصالات. وحيث يستخدم المزود شروط الاستخدام العادل لتغيير الحصة بعد استخدام كثيف مستمر، تكون هذه الشروط جزءًا من الخطة أيضًا. ولا تحدد الكلمة وحدها مجموعة القواعد كاملةً.
تفيد رسالة صريحة من المزود أكثر من إخفاق عام. ويعني HTTP 429 أن الخدمة المجيبة تعد عدد الطلبات مرتفعًا جدًا وفق قواعدها. فحدد أولًا ما إذا كانت الاستجابة من خدمة الوكلاء أم الوجهة. وقد تكون لانتهاء المهلة أسباب أخرى، منها بطء الوجهة أو مشكلة الشبكة. وتساعد إحصاءات الاستخدام وتفاصيل الخطأ ووقت المحاولة على تمييز مشكلة الحصة من إخفاق في مكان آخر.
قد يؤدي تكرار إرسال العمل المرفوض إلى تفاقم مشكلة المعدل واستهلاك حصة إضافية. ويستهدف التغيير المفيد الشرط المعروف: خفض معدل الإرسال، أو إغلاق اتصالات لم تعد لازمة، أو تعويض الحصة التي نفدت، أو تأكيد الإذن للوجهة. ولا تفيد ترقية باقة عامة إلا إذا غيرت ذلك الشرط بعينه.
طابق الحدود مع المهمة الكاملة
ابدأ بالنتيجة المطلوبة والموعد النهائي. ولحساب توضيحي، لنفترض أن مهمة تحتاج إلى 6,000 طلب HTTP خلال 30 دقيقة، بمتوسط استجابة 0.5 MB. ويعني ذلك متوسط 200 طلب في الدقيقة ونحو 3 GB من بيانات الاستجابة باستخدام الوحدات العشرية. ولا يشمل التقدير البيانات الصادرة أو موارد المتصفح الإضافية أو المحاولات المتكررة. ويجب إدراجها إذا ولّدتها المهمة الفعلية وحسبتها الخدمة.
لا تحدد هذه المجاميع بعد حصة الاتصالات التي تحتاجها. اختبر النشاط المتوازي الفعلي للتطبيق ومدة بقاء الاتصالات مشغولة. وأدرج البرامج الأخرى المشاركة في الحد نفسه والدفعات القصيرة عند بدء المهام معًا. وقس حجم البيانات ومعدل الطلبات والاتصالات المتزامنة منفصلة؛ فلا يمكن لعدّاد واحد تمثيل الثلاثة.
استخدم المنتج والوجهات المقصودة في الاختبار، بما في ذلك وظائف التطبيق اللازمة لإتمام المهمة. ويثبت فحص صغير ناجح أن عملية واحدة عملت. ويضيف تشغيل تمثيلي أدلة على الحمل المستمر والذروات والموارد التي تحتاجها المهمة كاملةً. واحتفظ ببعض السعة للتفاوت المرصود في الاختبار، بدل معاملة المتوسط حدًا أقصى مأمونًا.
إذا لم يتضح متطلب، فقدم للدعم وصفًا محددًا: المنتج ومضيفي الوجهة ومنافذ الوجهة وبروتوكول النقل وحجم البيانات المتوقع ومعدل الطلبات وذروة الاتصالات وأي خطأ بنصه. ويتيح ذلك للمزود فحص الحصة أو الإذن المعني. والنتيجة المطلوبة هي تطابق حدود الخدمة المعلنة مع العبء الذي تخطط لتشغيله.
