محمل curl
curl-loader هي أداة مفتوحة المصدر لاختبار أداء البرامج .
تم تطوير هذه الأداة القائمة على لغة C وصيانتها بواسطة الدكتور روبرت ياكوباشفيلي ومايكل موزر.
سمات
يُمكن لبرنامج curl-loader محاكاة سلوك تطبيقات مئات الآلاف من عملاء HTTP / HTTPS و FTP / FTPS ، لكل منهم عنوان IP خاص به. وعلى عكس الأدوات الأخرى، يستخدم curl-loader حزم بروتوكولات عملاء حقيقية، وهي حزم HTTP و FTP من مكتبة libcurl و TLS / SSL من مكتبة openSSL ، كما يُحاكي سلوك المستخدم مع دعم أنواع تسجيل الدخول والمصادقة المختلفة.
يمكن تشغيل ما يصل إلى 2500 إلى 100000 عميل تحميل افتراضي أو أكثر من خلال عملية تحميل curl واحدة. قد يكون العدد الفعلي للعملاء الافتراضيين أعلى بعدة مرات، ويقتصر ذلك بشكل أساسي على توفر الذاكرة. يقوم كل عميل افتراضي بتحميل البيانات من عنوان IP المصدر "الشخصي" الخاص به، أو من عنوان IP "المشترك" بين جميع العملاء، أو من عناوين IP مشتركة بين بعض العملاء حيث يمكن استخدام مجموعة محدودة من عناوين IP المشتركة من قبل مجموعة من العملاء.
الميزات الرئيسية:
- زيادة عدد العملاء الافتراضيين عند بدء التحميل سواء في الوضع التلقائي أو اليدوي؛
- عناوين IPv4 و IPv6 و URIs؛
- HTTP 1.1. GET، POST، PUT، DELETE، HEAD بما في ذلك عمليات تحميل الملفات؛
- تسجيل دخول المستخدم عبر بروتوكول HTTP باستخدام طرق POST أو GET+POST. تتوفر خيارات لتخصيص اسم المستخدم وكلمة المرور لكل عميل افتراضي، بالإضافة إلى إمكانية تخصيص سلسلة البيانات المرسلة (post-forms). كما يتوفر خيار آخر لتحميل بيانات اعتماد المستخدمين من ملف نصي للرموز المميزة.
- نماذج HTTP POST/GET مع ما يصل إلى 16 رمزًا يتم ملؤها من ملف نصي للرموز؛
- تسجيل خروج مستخدم HTTP باستخدام POST أو GET+POST أو GET (ملفات تعريف الارتباط)؛ تسجيل الخروج باستخدام POST مع سلسلة إرسال قابلة للتكوين (نماذج post)؛
- إرسال بيانات نموذج HTTP متعدد الأجزاء عبر POST كما هو موضح في RFC1867؛
- مصادقة الويب والوكيل HTTP (استجابات HTTP 401 و 407) باستخدام Basic و Digest (RFC2617) و NTLM؛
- عمليات إعادة توجيه HTTP 3xx مع عدد غير محدود من عمليات إعادة التوجيه؛
- ملفات تعريف الارتباط HTTP وذاكرة التخزين المؤقت لنظام أسماء النطاقات (DNS )؛
- بروتوكول نقل الملفات السلبي والنشط، تحميل الملفات عبر بروتوكول نقل الملفات ؛
- تخصيص كامل لرؤوس طلبات العميل HTTP / FTP ؛
- معدل الحد الأقصى للنقل لكل عملية تنزيل أو تحميل للعميل على أساس كل عنوان URL؛
- احتمالية جلب عنوان URL ؛
- إعادة استخدام اتصالات TCP أو إعادة إنشائها على أساس كل عنوان URL ؛
- عدد غير محدود من عناوين URL القابلة للتكوين. دمج عناوين URL من نوع HTTP و HTTPS و FTP و FTPS في تكوين دفعة واحدة (خطة اختبار)؛
- مؤقتات إنشاء الاتصال لكل عنوان URL؛
- مراقبة وتفعيل مؤقتات إكمال عناوين URL لكل عميل؛
- مؤقتات "النوم" بين/بعد عنوان URL، بما في ذلك المؤقتات العشوائية المأخوذة من فاصل زمني قابل للتكوين؛
- ملف سجل يحتوي على أنشطة التتبع لكل عميل افتراضي؛
- تسجيل الاستجابات (العناوين والنصوص) في الملفات؛
- أمثلة على تكوين الدفعة المطبوخة مسبقًا (خطة الاختبار)؛
- قم بتحميل الحالة في وحدة التحكم مع إخراجها إلى ملف؛
- يتم تسجيل حالة وإحصائيات كل عميل افتراضي في ملف؛
يهدف برنامج curl-loader إلى توفير حل مفتوح المصدر لاختبار أداء البرمجيات من جانب العميل، كبديل لبرنامجي Spirent Avalanche وIXIA IxLoad. ويُستخدم curl-loader عادةً مع خادم الويب nginx أو Apache من جانب الخادم.
انظر أيضاً
مراجع
- "تم إطلاق برنامج تحميل الملفات باستخدام curl" . أخبار لينكس الأسبوعية . 16 يوليو 2007. تم الاطلاع عليه في 7 أغسطس 2007 .
روابط خارجية
- أدوات اختبار التحميل
