![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam do przesłania kilkadziesiąt tysięcy małych (1-5kb) plików na serwer. Łącznie ważą 20 mb więc przesłanie ich powinno zająć niecałe pół godziny, jednak trwa to wiele godzin ponieważ total commander przy kazdym pliku odczekuje sekundę. Czy istnieje jakiś inny sposób na szybkie przesłanie dużej liczby małych plików? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
FileZilla -> ustawiasz np. 10 równoczesnych połączeń (w ustawieniach zaawansowanych połączenia) i w mgnieniu oka wszystko leci na serwer. BTW - najlepszy klient FTP z jakim miałem do czynienia.
[edit] Tu masz pokazane jak ustawić ilość połączeń Ten post edytował sowiq 21.07.2009, 12:14:42 |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
FTP to dziwny protokół. W przypadku wielu plików więcej transferu zjedzą Ci komendy protokołu niż faktyczny plik. Najlepiej to spakować te pliki i wysłać jako jeden, a na serwerze rozpakować. Oczywiście warunkiem jest dostęp do shela. Pozdrawiam! |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Odpaliłem tą filezillę i idzie jak burza, akurat mam dozwolony limit połączeń do 8.
Aby mieć dostęp do shella niestety muszą przesłać dokumenty tożsamości do hostingu więc trochę zachodu jest. |
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Najlepiej to spakować te pliki i wysłać jako jeden, a na serwerze rozpakować. Oczywiście warunkiem jest dostęp do shela. Bujasz. [; Mnie też małe pliki denerwują, a rozwiązanie banalne: robisz TGZ z tymi plikami, kopiujesz na serwer i obok prosty plik PHP:
i odpalasz przez przeglądarkę. Proste, często działa (wymaga exec" title="Zobacz w manualu PHP" target="_manual) i praktycznie bezproblemowe, shella nie trzeba. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
WTF? Widzę że filezilla ma limit do 2000 plików na katalog
Output truncated to 2000 matche total commanderem wrzucałem po kilkadziesiąt tysięcy plików na 1 katalog a tu takie ograniczenie? Ten post edytował AboutMe 21.07.2009, 13:19:29 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
WTF? Widzę że filezilla ma limit do 2000 plików na katalog Output, czyli wyświetlanie. Jak Ci zacznie ładować listę 50k plików, to Ci się zdeczka komp przymuli :] Jestem pewien, że jak przeciągniesz cały katalog z tymi plikami, to wszystko Ci pobierze.Output truncated to 2000 matche BTW - po co aż tyle plików w katalogu? Było kilka tematów na forum o wydajności systemu plików i wszyscy zgodnie pisali, że powyżej 1k plików na katalog szybkość odnajdowania plików leci na łeb... |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Chyba faktycznie będę musiał zmniejszyć ilość plików na katalog. Przy 10k plikach za każdym razem ładuje thumb wielkości 100kb.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
WTF? Widzę że filezilla ma limit do 2000 plików na katalog Output truncated to 2000 matche total commanderem wrzucałem po kilkadziesiąt tysięcy plików na 1 katalog a tu takie ograniczenie? Erix napisał Ci abyś spakował je i wypakował na serwie. P.S. Po co Ci tyle tych pliczków? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Erix napisał Ci abyś spakował je i wypakował na serwie. Pliki już są na serwerze tyle że niewidoczne Cytat P.S. Po co Ci tyle tych pliczków? Archiwum usenetu mam w nich. Ma ktoś może link do tego testu wydajności? Cytat ...testował chyba 100 000 (albo 1 000 000) plików o rozmiarze ~2kB. Trzymanie wszystkich plików w jednym katalogu okazało się najwydajniejsze...
Ten post edytował AboutMe 21.07.2009, 13:58:20 |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Może kiedyś tak było. Ale zważ na to, że współczesne systemy plików posiadają journaling, który nie jest bez wpływu na wydajność.
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Mógłbym prosić o jeszcze 1 wyjaśnienie? Skoro mój hosting ogranicza wyświetlanie plików do 2000 sztuk na katalog, więc czy to w katalogu znajduje się 2.000 czy 10.000 plików to zawsze ładuje się thumb wielkości ~100kb więc czy to oznacza że obciążenie jest takie samo przy 2k i 10k plikach?
2. pytanie, czy ten thumb nie jest przypadkiem cashowany przez przegladarki lub roboty sieciowe? Bo np. klient FTP to cashuje. |
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat ~100kb więc czy to oznacza że obciążenie jest takie samo przy 2k i 10k plikach? Jaśniej? Cytat 2. pytanie, czy ten thumb nie jest przypadkiem cashowany przez przegladarki lub roboty sieciowe? Bo np. klient FTP to cashuje. Zależy. |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
O ile dobrze rozumiem to obciążenie generuje wielkość pliku thumb. Jeśli wchodzę do katalogu który zawiera 2000 plików to ładuje się 100 kb komend, natomast jeśli w pliku znajduje się 10.000 plików to powinno się załadować 500 kb ale ładuje się 100 kb poniważ hosting wyświetla tylko 2000 plików. Więc obciążenie jest takie samo przy 2k plikach jak i przy 10k?
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 2 Dołączył: 27.10.2006 Skąd: CyberRZECZYWISTOŚĆ Ostrzeżenie: (0%) ![]() ![]() |
Z moich obserwacji wynika, że sama ilość plików nie generuje obciążenia żadngo i nie ma pływu na działanie serwera...
Obciążenie generuje to co sie z nimi robi. Np. majac 10 000 plików w jednym katalogu przy zapytaniu typu: czy istnieje plik i następnie wyświetlenie go to obciążenie jest takie samo jak by ten plik był tylko sam w katalogu. Natomiast podczas zalogowania sie menedzerem ftp do katalogu z dużą ilością plików następuje odczyt nazw plików, ich rozmiary, daty modyfikacji itp. w tym przypadku ilość plików ma negatywny wpływ na działanie serwera(obciążenie). Ta sama zasada tyczy się robienia kopii zapasowych, jeśli jest ich dużo to serwer musi troche przetworzyć danych i robi sie to dość długo. Kiedyś robiłem sporo testów tego typu i najefektywniejsze rozwiązanie to pliki w jednym katalogu tylko poprostu trzeba nimi mądrze zarządzać, aby nie zmuszać serwera do przetwarzania ich wszystkich. |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 2.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ja jakoś nie mogę sobie tego wyobrazić, jak by mi się przyciął klient FTP wbudowany w eksplorator systemowy gdybym otworzył taki katalog (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) (Linux Ubuntu).
Co do tematu: nie można tych plików połączyć w jeden (np. 10 plików łączonych w jeden) a potem je oddzielać skryptem? Takie rozwiązanie co prawda by ładowało calutki plik ale jak ktoś słusznie zauważył, koszt transferu by spadł (Wysłanie jednego pliku to chyba przynajmniej 3 komendy w FileZilli, w TotalCommanderze jest o parę więcej z tego co pamiętam), jeżeli ci na prędkości nie zależy. Zanim poznałem bazy danych (i bylem baaardzo początkujący (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) robiłem bazy danych w plikach. Heh na 10 userów miałem ~500 plików w katalogu, wtedy nie znałem funkcji PHP. Ale znalazłem explode i udało mi się wyciągnąć ~50 plików (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#17
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Co do tematu: nie można tych plików połączyć w jeden (np. 10 plików łączonych w jeden) a potem je oddzielać skryptem? Ok, ale pomyśl że masz te pliki modyfikować i co wtedy? |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 2 Dołączył: 27.10.2006 Skąd: CyberRZECZYWISTOŚĆ Ostrzeżenie: (0%) ![]() ![]() |
Jeśli chodzi o wgrywanie plików na serwer to dobrym rozwiązaniem jest złączenie ich bo wtedy będzie dużo szybciej sie je wgrywało..... Jak łączyć to nie dziesieć, dwadziecia plików tylko do rozmiaru jakie pozwala łącze internetowe w efektywnym czasie wgrać je na serwer.
Ja wykorzystywałem łączenie plików, ale po to aby je ściągnąć z serwera. Ilość plików jakie miałem ściągnąć wynosiła kilkanaście tysięcy, po kilku godzinach ściągania doszłem do wniosku, że dużo szybciej jest coś napisać co je złączy i ściągnie na dysk lokalny. Jeśli chodzi o zarządzanie takimi złączonymi plikami na serwerze to nie wiem czy jest w tym sens, bo trzeba by je za każdym razem rozłączać, a to będzie zbędna operacja która będzie generować niepotrzebne obciążenie. Ten post edytował faran 3.08.2009, 21:15:00 |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 2.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
No cóż dawno to było jak ja takie numery robiłem i wtedy nawet nie orientowałem się co to transfer (o_O) i pracowałem na Win 98 (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Do tematu: a zip-y odpadają? Na kompie wszystko spakować do zip-a (nawet z zerową kompresją) a na serwerze to rozdzielić (wiem, istnieją serwery bez tej funkcjonalności) za pomocą PHP - kiedyś tak robiłem gdy instalowałem phpBB - przy moim łączu to trwało (wrzucenie FTP) pół godziny a w zipie ok. 10-15 minut. Na serwerze się pisało skrypt który to rozdziela i oszczędzałem całe 10min no i się uczyłem ciekawych funkcji PHP (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#20
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Do tematu: a zip-y odpadają? Na kompie wszystko spakować do zip-a (nawet z zerową kompresją) a na serwerze to rozdzielić (wiem, istnieją serwery bez tej funkcjonalności) za pomocą PHP Lepiej TAR, gdyż obsługa jest mniej problematyczna. |
|
|
![]()
Post
#21
|
|
Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
@erix, ale się czepiasz! Dla mnie możliwość wykonania exec, a dostęp do shella w tym kontekście to w zasadzie to samo. Pozdrawiam! |
|
|
![]()
Post
#22
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 1 Dołączył: 2.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie, TAR lepszy - przyznaję rację, nawet w moim systemie (Linux) łatwiej i szybciej chodzą archiwa typu tar, bz itp. Swoją drogą to mnie to zdziwiło jak zrobiłem pomiar prędkości pakowania/odpakowywania archiwum tar, bz oraz zip i rar. Najszybszy tar, potem zip, bz, i na końcu rar. Mogę podać czasy dla przykładowego pliku (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
A z taką ilością plików to ja bym szybciej chyba wysłał CD do admina mojego serwerka (akurat mam z nim dobry kontakt) aby wszystko wrzucił bezpośrednio (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) by było szybciej gdyby ilośc pliczków > 15k. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#23
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Tar jest najszybszy bo ... nie pakuje plikow tylko zlacza je w jeden.
Oczywiscie mozna nim od reki plik tez spakowac gzipem czy bzipem, ale glowne jego zadanie to wrzucic pliki w jeden. |
|
|
![]()
Post
#24
|
|
Grupa: Zarejestrowani Postów: 261 Pomógł: 0 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Co jest nie tak z tym kodem?
Linijka
Fatal error: Call to undefined function: rar_open() in /home/foo/bar/ on line 8 |
|
|
![]()
Post
#25
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Po polsku: NIE MA ROZSZERZENIA/BIBLIOTEKI RAR.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 23:19 |