HTTP, FTP yükleme vs

7 Cevap php

Ben üye (resim, video) boyutu 20MB kadar (belki biraz daha az 15MB gibi, henüz nihai bir upload limitini yerleşmiş değil ama 10 arasında bir yerde olacaktır içerik yüklemek için izin verilecek büyük bir web sitesi inşa ediyorum -25MB).

Ben bu durumda HTTP veya FTP upload ile gitmeli Benim sorudur. Yüklenenler% 80-90 CCA 1-3MB gibi daha küçük boyutta olacaktır unutmayın ama zaman zaman bazı üyeler de büyük dosyaları (10MB +) yüklemek isteyecektir.

HTTP gibi büyük dosyalar için yeterince güvenilir yükleyerek ya da ben FTP ile gitmeli? Dosya yükleme sırasında HTTP ve FTP arasındaki fark hız farkı var mı?

Ben durumda ben bunun için kendi adaptörü yazmak zorunda FTP seçin, zaten dosya yüklemeleri için HTTP adaptörü vardır Zend Framework kullanarak çünkü ben soruyorum.

Teşekkürler!

7 Cevap

HTTP kesinlikle istemciler üzerinde bir yük daha az koyar. Yerlerde bir sürü vekiller ya da (veya) tüm FTP trafiğini engellemek güvenlik duvarları var.

Sadece port 80 yerine HTTP bağlantı noktasında 443 üzerinden HTTPS kullanın --- HTTP büyük avantajı bitti duvarları gider ve o şifrelemek çok kolay. Hem yakınlık ve güvenlik duvarları geçmesi. Ve bu gün bir POST kullanarak HTTP / HTTPS üzerinden 20MB dosya yüklemek oldukça kolay.

HTTP ile sorun yüklenenler için restartable olmasıdır. Eğer gönderilen dosyanın% 80 olsun ve sonra bir başarısızlık varsa, siz başında yeniden başlatmanız gerekecektir. Sunucuları giderek flash tabanlı, java tabanlı veya javascript tabanlı yükleyicileri ve indirenler kullanıyorsanız neden budur. Bu sistemler, gönderilen ne kadar dosya görmek düzgün geldi emin olmak için bir MAC göndermek ve eksik parçalarını yeniden gönderebilirsiniz.

Bir MAC düşündüğünüzden daha önemlidir. TCP sağlama yalnızca 32 bit, yani algılanmayan bir hata 1-in-4-milyar şansı yoktur. Bu potansiyel bugünün internet ile bir çok olur.

Is HTTP uploading reliable enough for such large files

FTP biri büyük avantajı durdurulan yüklenenler devam etmek için yeteneği olacaktır. Her zaman aktif değil ama çoğu FTP sunucuları ve istemcileri, bu destek. HTTP ile ise, özel başlıklarını kullanarak teorik olarak mümkün, ama normal bir istemci (yani tarayıcı) destek olmaz.

Diğer bir avantajı toplu yüklenenler olurdu: FTP çok basit, değil HTTP yani.

Ama neden sadece iki seçeneği sunmuyor? HTTP güvenilmez bağlantıları üzerinden yükleme çok veya büyük yüklenenler yapmak zorunda insanlar için proxy arkasında olan ve / veya bir FTP istemcisi kullanamazsınız olmaz, ve FTP isteyenler için.

Ben alaycı olmak wanto değilsiniz, ancak Dosya Aktarım Protokolü dosya transferi daha güvenilir olması gerekir :)

Kaynak kullanılabilirliği / kullanım güvenilirliği veya hızından daha bir sorun daha fazladır. Her yükleme kaynaklarını tüketir - Konu / bellek / etc - yüklenme süresi için web sunucusu. Içerik yükleme trafik büyük dosyalar için önemli ise bu sadece HTTP sunucusu sayfayı isteklerine daha duyarlı olması için ücretsiz FTP kullanmak için daha iyi olurdu.

Ben kesinlikle burada halkın geri kalanı gibi HTTP yaklaşım tercih. Bunun nedeni, bir ila üç megabayt olan dosyaların çoğu hakkında söylediğim budur.

Sorun bu kadar, "dinlenme" için:

Have you considered allowing users to send larger files through e-mail to a deamon script that gets the emails and uploads the emails to the account associated with the sender? Or there is the solution of the flash uploader, in a facebook-like approach.

Ikincisi böylece toplam transfer boyutunu artırmak düz metin haline ikili içeriği (base64) kodlamak gerekir çünkü FTP, HTTP daha az bant genişliği tüketir. (1/3).

Ancak, bant genişliği tüketimi mutlaka HTTP hakim olduğu kullanılabilirlik ve güvenlik gibi diğer faktörler, karşılaştırmak, büyük endişe olmayabilir.