← العودة إلى المدونة

واجهة بحث IP بالجملة: بنية حدود المعدّل

واجهة بحث IP بالجملة: بنية حدود المعدّل

تتيح لك واجهة البحث بالجملة عن عناوين IP حلّ عناوين كثيرة في طلب واحد بدلاً من استدعاء لكل عنوان، وتنحصر البنية المحيطة بها في ثلاثة قيود: أقصى حجم للدفعة، وميزانية الطلبات المسموح بإنفاقها، ومدى تجنبك طرح السؤال نفسه مرتين. يستعرض هذا المقال تصميماً عملياً، مستخدماً نقطة ipto للبحث بالجملة للأرقام الملموسة.

ما تقبله نقطة البحث بالجملة عن IP

البحث بالجملة في ipto هو طلب POST إلى /v1/ip/bulk بمصفوفة JSON من سلاسل IP. يقبل الطلب حتى 100 عنوان، وتُزال التكرارات قبل المعالجة، والاستجابة كائن مفتاحه عنوان IP، وكل إدخال بشكل نتيجة بحث مفرد مع الدولة والمدينة وASN والمنظمة والحقول is_vpn وis_tor وis_abuser وis_datacenter وحقول bogon. البحث بالجملة ميزة في الخطط المدفوعة، متاحة في Pro وEnterprise، بينما تغطي الخطة المجانية عمليات البحث المفردة بواقع 1,000 طلب في اليوم دون تسجيل. راجع وثائق API لمعرفة صيغة الطلب الحالية.

التفصيل المحاسبي المهم أن البحث بالجملة يُحتسب لكل عنصر. فدفعة من 100 عنوان تُحتسب 100 من ميزانيتك اليومية، تماماً كـ 100 بحث منفرد. لذا فالتجميع في دفعات لا يوسّع حصتك. ما يوفره هو الرحلات الشبكية وإنشاء الاتصال وتنسيق العمل من جهة العميل، وهو غالباً الاختناق الحقيقي عند إثراء ملف سجلات أو قائمة عملاء.

صمّم المسار حول الميزانية

ولأن كل عنوان ينفق من الميزانية، فأرخص طلب هو الذي لا ترسله أبداً. ابدأ بالتصفية. فالعناوين الخاصة والمحجوزة لن يكون لها تحديد موقع ذو معنى، ويمكنك إسقاطها محلياً أو تصنيفها بـأداة فحص bogon IP قبل أن تكلّف شيئاً. ثم أزل التكرار من المجموعة المتبقية، لأن سجلات الإنتاج يهيمن عليها عدد قليل من الزوار المتكررين وزواحف الويب وبوابات NAT. ومجموعة تجزئة (hash set) أمام مُجمِّع الدفعات هي عادةً أعلى تعديل مردوداً.

ثم أضف ذاكرة تخزين مؤقت مفتاحها العنوان بمدة صلاحية تناسب سرعة تغير البيانات التي تهمك. فربط الدولة وASN مستقر لفترات طويلة، فالأيام معقولة. أما أعلام السمعة فتتغير أسرع، إذ تُحدَّث مصادر التهديدات في ipto كل 6 ساعات ومجموعات بيانات IP وASN يومياً، فتخزين حكم لأكثر من بضع ساعات يضيف قِدَماً دون توفير كبير. احتفظ بمدة صلاحية منفصلة لكل حقل إن أمكن، أو خزّن النتيجة كاملة بالمدة الأقصر.

  • صفِّ مدخلات bogon والمدخلات الواضحة عدم صلاحيتها محلياً.
  • أزل التكرار داخل المهمة ومقابل الذاكرة المؤقتة.
  • قسّم العناوين المتبقية إلى مجموعات لا تتجاوز 100.
  • أرسل الدفعات بتزامن محدود لا دفعة واحدة.
  • اكتب النتائج في الذاكرة المؤقتة ومخزن الوجهة، بمفتاح العنوان.

التزامن والتراجع والنافذة اليومية

الميزانية اليومية نافذة ثابتة، فنمط الفشل الذي ينبغي التصميم له هو استنفادها في منتصف المهمة. قدّر الكلفة قبل البدء: عدد العناوين الفريدة غير bogon هو عدد الطلبات التي ستنفقها المهمة. فإن زاد عما تبقى اليوم، فقسّم المهمة على عدة نوافذ، أو قدّم العناوين الأعلى قيمة أولاً، أو ارجع إلى البحث المفرد للأعلى خطورة فقط. واحفظ التقدم كي تستأنف المهمة المعاد تشغيلها من آخر دفعة مكتملة لا من البداية.

استخدم تزامناً معتدلاً. تكفي عادةً حفنة من الدفعات المتوازية، فكل دفعة تحمل 100 بحث أصلاً، والتفرع غير المحدود لا يزيد إلا صعوبة تتبع الأعطال. وعند خطأ عابر أو استجابة تجاوز الميزانية، أعد المحاولة بتراجع أسي مع تشويش عشوائي، وعامِل الميزانية المستنفدة إشارة للتوقف والاستئناف لاحقاً، لا أمراً يُعاد في حلقة ضيقة. واجعل كل كتابة متساوية الأثر (idempotent) كي لا تُدرِج دفعة معادة الصفوف مرتين.

الاختيار بين البحث بالجملة والمفرد

للمسارات الآنية مثل نموذج تسجيل أو الدفع، استخدم بحثاً مفرداً لكل حدث. فزمن الاستجابة منخفض، والذاكرة المؤقتة تمتص التكرار، ولا تنفق الميزانية إلا على العناوين التي تصل فعلاً. والبحث بالجملة للعمل غير المتصل: ملء جدول بأثر رجعي، أو تقييم يوم من السجلات، أو تدقيق قائمة سماح. وإذا كان هدفك تقييم المخاطر لا الإثراء الخام، فإن أداة درجة الاحتيال تدمج إشارات IP والبريد والهاتف وUser-Agent في درجة واحدة من 0 إلى 100، وقد تحل محل عدة استدعاءات منفصلة. وللمقارنة الأطول بين حدود الخطط المجانية لدى المزودين، راجع مقارنتنا لمعدلات الخطط المجانية.

وأخيراً، سجّل استخدامك أنت. تتبّع الطلبات المنفقة لكل مهمة ونسبة إصابة الذاكرة المؤقتة وحصة العناوين المسقطة بوصفها bogon أو مكررة. هذه الأرقام الثلاثة تخبرك بنجاح البنية قبل وقت طويل من تنبيه الميزانية.

قبل أن تكتب سكربتاً لدفعة كبيرة، جرّب حفنة من العناوين يدوياً: يعرض بحث ASN الشبكة التي تملك نطاقاً تراه باستمرار في سجلاتك، مما يتيح غالباً معالجة شبكة كاملة بقرار واحد بدلاً من آلاف عمليات البحث المفردة.

إجابات مباشرة

تقبل نقطة البحث بالجملة، POST /v1/ip/bulk، مصفوفة JSON تضم حتى 100 عنوان IP في الطلب الواحد. تُزال التكرارات قبل المعالجة والاستجابة مفتاحها عنوان IP.
لا. يُحتسب البحث بالجملة لكل عنصر، فدفعة من 100 عنوان تُحتسب 100 طلب من الميزانية اليومية. التوفير في عدد الرحلات الشبكية لا في الحصة.
توفّر الخطة المجانية عمليات بحث مفردة بواقع 1,000 طلب في اليوم دون تسجيل. أما البحث بالجملة فمتاح في خطتي Pro وEnterprise.
← العودة إلى المدونة