giełda, akcje, inwestycje
 ° Forum ° Odpowiedz ° Rejestracja ° Szukaj °

fotografie - duże rozmiary

Forum / php / fotografie - duże rozmiary
Autor Wiadomość
ptaku

Posted: 24 Lip 2008 09:49:47



Witam.
Tworze pewną galerie do której użytkownik zgodnie z jej założeniem
będzie mógł wrzucać fotografie w dowolnej rozdzielczości (np
2200x2800px), na podstawie oryginału będą tworzone dwie kopie o
mniejszych wymiarach, oraz miniaturka. Do zmniejszania fotografii
używam ImageMagick i klasy Imagick (GD był strasznie pamięciożerny).
Wszystko jest ok dla uploadu jednego/kilku zdjęcia, lecz gdy chce
przerobić większą liczbe fotografii wrzucone na ftp dostaje błąd "PHP
Fatal error: Maximum execution time of 30 seconds exceeded..."
Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

pozdrawiam




Bartosz Skorupa

Posted: 24 Lip 2008 10:47:54



Witam.
Tworze pewną galerie do której użytkownik zgodnie z jej założeniem
będzie mógł wrzucać fotografie w dowolnej rozdzielczości (np
2200x2800px), na podstawie oryginału będą tworzone dwie kopie o
mniejszych wymiarach, oraz miniaturka. Do zmniejszania fotografii
używam ImageMagick i klasy Imagick (GD był strasznie pamięciożerny).
Wszystko jest ok dla uploadu jednego/kilku zdjęcia, lecz gdy chce
przerobić większą liczbe fotografii wrzucone na ftp dostaje błąd "PHP
Fatal error: Maximum execution time of 30 seconds exceeded..."
Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

pozdrawiam

Problem leży w tym że skrypt wykonuje się dłużej niż może (chodzi o
ustawienia apachu)

Ja problem galerii rozwiązałem nieco inaczej. W katalogu z galerią
przechowuje to co wgrał user, natomiast podczas wyświetlania strony
generuję miniaturkę w locie przez wywołanie
----------------
<img src="min.php?rx=150&amp;name=m_dsc00794.jpg&amp;dir=gallery/63"
alt="Tau" border="0"
----------------




Bartosz Skorupa

Posted: 24 Lip 2008 10:50:30



Witam.
Tworze pewną galerie do której użytkownik zgodnie z jej założeniem
będzie mógł wrzucać fotografie w dowolnej rozdzielczości (np
2200x2800px), na podstawie oryginału będą tworzone dwie kopie o
mniejszych wymiarach, oraz miniaturka. Do zmniejszania fotografii
używam ImageMagick i klasy Imagick (GD był strasznie pamięciożerny).
Wszystko jest ok dla uploadu jednego/kilku zdjęcia, lecz gdy chce
przerobić większą liczbe fotografii wrzucone na ftp dostaje błąd "PHP
Fatal error: Maximum execution time of 30 seconds exceeded..."
Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

pozdrawiam

Problem leży w tym że skrypt wykonuje się dłużej niż może (chodzi o
ustawienia apachu)

Ja problem galerii rozwiązałem nieco inaczej. W katalogu z galerią
przechowuje to co wgrał user, natomiast podczas wyświetlania strony
generuję miniaturkę w locie.




krzysztof

Posted: 24 Lip 2008 11:17:50



Ja problem galerii rozwiązałem nieco inaczej. W katalogu z galerią
przechowuje to co wgrał user, natomiast podczas wyświetlania strony
generuję miniaturkę w locie.

Za każdym razem? Jak masz w galerii 50 oryginałów 2200x2800px
to tez generujesz w locie miniaturke do każdego?




krzysztof

Posted: 24 Lip 2008 11:19:08



Witam.
Tworze pewną galerie do której użytkownik zgodnie z jej założeniem
będzie mógł wrzucać fotografie w dowolnej rozdzielczości (np
2200x2800px), na podstawie oryginału będą tworzone dwie kopie o
mniejszych wymiarach, oraz miniaturka. Do zmniejszania fotografii
używam ImageMagick i klasy Imagick (GD był strasznie pamięciożerny).
Wszystko jest ok dla uploadu jednego/kilku zdjęcia, lecz gdy chce
przerobić większą liczbe fotografii wrzucone na ftp dostaje błąd "PHP
Fatal error: Maximum execution time of 30 seconds exceeded..."
Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

http://pl.php.net/manual/en/info.configuration.php#ini.max-execution-time
http://pl.php.net/manual/en/function.set-time-limit.php




Bartosz Skorupa

Posted: 24 Lip 2008 11:48:57




Ja problem galerii rozwiązałem nieco inaczej. W katalogu z galerią
przechowuje to co wgrał user, natomiast podczas wyświetlania strony
generuję miniaturkę w locie.

Za każdym razem? Jak masz w galerii 50 oryginałów 2200x2800px
to tez generujesz w locie miniaturke do każdego?

Nie, ograniczam wyświetlenie na jednej stronie do kilki (<10) zdjęć.




krzysztof

Posted: 24 Lip 2008 12:45:24



Nie, ograniczam wyświetlenie na jednej stronie do kilki (<10) zdjęć.

Czyli jeśli 20 osób wejdzie jednoczesnie na taką stronę,
to Twój serwer lezy?




Mik

Posted: 24 Lip 2008 13:32:37




To Cię nie broni przed przekroczeniem czasu wykonywania zadania. Albo
limitujesz ilość wprowadzanych na raz zdjęć i od razu generujesz sobie
jakieś wyjściowe miniatury, albo musiałbyś zastosować jakiś np.
flashowy uploader plików, który za każdym razem będzie Ci ładować
pojedyncze zdjęcie na serwer i obrabiać, a dla internauty będzie to
taka wygoda, że od razu załaduje sobie ile tam chce zdjęć i kliknie
"wyślij", pójdzie na herbatkę, wróci a wszystko zdąży się wysłać.



pozdrawiam
Mik
ps. Zapraszam na www.doromi.net





Paweł Andziak

Posted: 24 Lip 2008 13:41:39




Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

Ja bym zapisywal duze zdjecia na serwerze, utworzyl sobie (np. w bazie
danych) kolejke zdjec do przekonwertowania i np. z crona konwertowal
sobie po kilka sztuk co pare minut. Dla przekonwertowanych wyswietlaj
miniaturki, dla oczekujacych na konwersje jakas informacje "w trakcie
konwersji" - moze tez w postaci pliku graficznego o rozmiarach tych
miniaturek. Strona sie nie rozjedzie, przy malej ilosci zdjec bedziesz
mial konwersje praktycznie na bierzaco, a jak ktos zapakuje strasznie
duzo zdjec, to sie powoli wszystko przekonwertuje, a serwer nie umrze od
obciazenia (tylko trzeba sprawdzac, czy ostatnio odpalony proces
konwertujacy sie skonczyl).





K-len

Posted: 24 Lip 2008 14:07:17



[ciach]
Problem leży w tym że skrypt wykonuje się dłużej niż może (chodzi o
ustawienia apachu)

Ja problem galerii rozwiązałem nieco inaczej. W katalogu z galerią
przechowuje to co wgrał user, natomiast podczas wyświetlania strony
generuję miniaturkę w locie przez wywołanie
----------------
<img src="min.php?rx=150&amp;name=m_dsc00794.jpg&amp;dir=gallery/63"
alt="Tau" border="0"
----------------

Tylko mi nie mów że generujesz "małą fotkę" z oryginału co
każdą odsłonę ?




K-len

Posted: 24 Lip 2008 14:14:31



Witam.
Tworze pewną galerie do której użytkownik zgodnie z jej założeniem
będzie mógł wrzucać fotografie w dowolnej rozdzielczości (np
2200x2800px), na podstawie oryginału będą tworzone dwie kopie o
mniejszych wymiarach, oraz miniaturka. Do zmniejszania fotografii
używam ImageMagick i klasy Imagick (GD był strasznie pamięciożerny).
Wszystko jest ok dla uploadu jednego/kilku zdjęcia, lecz gdy chce
przerobić większą liczbe fotografii wrzucone na ftp dostaje błąd "PHP
Fatal error: Maximum execution time of 30 seconds exceeded..."
Moje pytanie jak rozwiązać ten problem, albo inaczej jakie rozwiązanie
było by najlepsze do zmiany rozmiaru dużej ilości fotografii w
wysokiej rozdzielczości.

pozdrawiam

jak ktoś wrzuca foty przez stronę to konwertuj to na bieżąco,
jeśli wgrywają to przez ftp to użyj cron-a cyklicznie
wywoływanego i jak znasz perl-a (i jest zinstalowany) to użyj
jego, jest bardziej wydajny od php.

pozdro




ptaku

Posted: 25 Lip 2008 09:28:20




jak ktoś wrzuca foty przez stronę to konwertuj to na bieżąco,
jeśli wgrywają to przez ftp to użyj cron-a cyklicznie

dzięki tak właśnie zrobiłem i działa doskonale
pozdro





Twoja wypowiedź

Bold Style  Italic Style  Underlined Style  Image Link  Insert URL  Email Link  Wyłącz BB code


Zanim wyślesz jakąś wiadomość z polskimi znakami, upewnij się czy kodowanie znaków w twojej przeglądarce to ISO-8859-2
 » Login  » Hasło 
 


Czas ładowania strony (sek.): 0.393 users

miniBB.net © 2001-2008 | Polityka Prywatności
e-giełdy + opisy gg + kumy fubi °

Online: Odwiedzający - 1
+ - 0
Najwięcej odwiedzających: 77 [6 Paź 2008 01:40:40]
Odwiedzający - 77 / + - 0
Lupe Fiasco Jethro Tull Iris Flipsyde Jamelia
  brussels hotel deals|| stroje|| tapety|| baseny|| branze|| prawo jazdy|| branze|| Posadzki przemysłowe

  • PlayStation 3 przegrywa wojnę konsol, również w Japonii
  • ony PlayStation 3, uwielbiany niegdyś przez Japończyków, nieubłaganie traci rynek na rzecz konsoli Microsoftu. Do tego stopnia, że obecnie Xboksów 360 sprzedaje się więcej niż urządzeń Sony.
  • NVIDIA rozstaje się z partnerami
  • Nastały ciężkie czasy dla producenta kart graficznych, firmy NVIDIA. Niegdyś rynkowy lider, obecnie ma problemy ze sprzedażą własnych kart graficznych. Dlatego też gigant postanowił pozbyć się najmniej dochodowych partnerów.
  • Środowisko KDE uaktualnione
  • Użytkownicy środowiska KDE pod Linuksem doczekali się kolejnego uaktualnienia. KDE 4.1.2 zawiera kilka dość znaczących usprawnień.
  • Następca PlayStation 3 będzie tańszy
  • Sony PlayStation 3, ze względu na dość egzotyczne komponenty jakie zawiera, okazał się wyjątkowo drogą w produkcji konsolą. Sony nie chce powtórzyć tego błędu projektując jej następczynię.
  • Microsoft wprowadza Hyper-V Server 2008
  • Microsoft wprowadził na rynek Microsoft Hyper-V Server 2008. Taką informację podał Steve Ballmer, dyrektor generalny firmy, podczas przemówienia inauguracyjnego wygłoszonego do 700 uczestników konferencji TechNet Server and Tools odbywającej się w Londynie.