2010-11-30 24 views
7

Dosya yükleme performansını test etmek için apachebench (ab) kullanmak istiyorum. El kitabını okudum ve hedefime ulaşmanın bir yolunu bulamıyorum., apachebench için multipart POST'u destekliyor mu?

Amacım bir dosyayı bir HTTP İsteği ile POST yöntemiyle ve çok parçalı/form-veri biçimiyle yüklemeyi denemektir.

"SONRASI DOSYASI -p" ab destek, ama ben sadece biçim anahtarını bulabilirsiniz = değer & anahtar2 = deger2 ben göndermek istediğiniz sonrası verileri

Content-Type nedir

: Çok parçalı/form-; boundary = ---- WebKitFormBoundaryuUlX4554LPBjInc5

------ WebKitFormBoundaryuUlX4554LPBjInc5 Content-Disposition: form-data; = "Dosya" adını; filename = "411c40d9.jpg" Content-Type: image/jpeg

xxxxxxxxxxxxxxx (GÖRÜNTÜ VERİLERİ) YYYYYYYYYYYYYYYYYYYYYYYYYYYYY

Bir süre googled ve bunu sağlamak için herhangi bir ilgili makale veya yol bulamıyorum. CURL kullanıyorum ve iyi çalışıyor, ancak stres testi yapmak istiyorum. Yani bu hedefe ulaşmak için ab kullanmam gerekiyor.

Herhangi bir öneriniz var mı?

cevap

9

Bu çok geç olabilir ama aynı şeyi arayan edildi başkalarına yardım gidebilir ... this guy için

$ ab -c 5 -n 5 -v 4 -p example_post.txt -T "multipart/form-data; boundary=miuxupsktcqtriloonfbdudrgtawascl" http://yourapplication.local/upload/ 

kredi.

+0

bu yanıtı takip ederek example_post.txt dosyasının içeriği -T "multipart/form-data; boundary = 1234567890" ... ... içeriğini alabilir: --1234567890 Content-Disposition: form-data; ad = "Kimlik" --1234567890 Content-Disposition: form-data; = "Videofile" adını; filename = "ab1_pod.avi" Içerik-Tür: video/x-msvideo [base64 kodlanmış dosya içeriği buradan] --1234567890-- – Paul

+0

bu işi yapamadık - eminim çalışıyorsunuz? –

+0

@ofer, yardıma ihtiyacınız olursa komutunuzu göndermenizi önerir. Kısa bir süre içinde .txt dosyasının geçerli dizininizde bulunduğunu kontrol edin, ab yüklediniz, teklifleri kapattınız ve URL'niz geçerli ... HTTPS'yi sertifikanın olmadığı yerde tutuyorsanız sorun olabilir. t geçerli – Carlton