Подскажите, нет больше сил!

12
Volkpanda
На сайте с 25.09.2006
Offline
147
1078

Дано: выделенный сервер, на нем сайт.

На сайте предоставляется услуга по подбору объектов. Много изображений этих объектов.

Требуется: через форму добавления объекта предоставить пользователю возможность загружать столько изображений объекта, сколько их есть у пользователя.

сейчас на сервере стоит ограничение 4 мегабайта на одно изображение. т.е. нажимаем "Обзор" грузим изображение. Изображение привязывается ко временному объекту...

таких можно грузить сколько угодно. После заполнения всей формы по объекту.. там поля не только для фото, но и с описанием объекта... информация отсылается на сервер и вместо временного объекта создается уникальный ID объекта, к которому и привязываются все изображения.

засада тут вот в чем!

на изображения накладывается вотермарк и делается из оригинального изображения несколько уменьшенных для различных вариантов просмотра..

т.е. программист кнопкой "Добавить" спрограммировал старт скриптам выполнять работу над изображениями. И поясняет, что скрипт живет 5 минут. Т.е. если изображений будет 100... а на обработку каждого дается минута, то скрипт не успеет все сто изображений обработать... Да и нагрузка на сервер большая. Если будет поток пользователей, загружающих большое колиичество изображений.

- это одна сторона вопроса.

- вторая сторона, что есть администратор у сайта. пользователь загружает изображения, скрипт их может не обрабатывать... а при проверке модератором добавленных объектов он сам и задает время обработки, не говоря о планировщике, который может обрабатывать если чтио ночью...

собственно пока все упирается в то, чтоб на сервер грузить в один заход (в одну сессию пользователя) столько фотографий/изображений, сколько их есть!

помогите советом. реально ли грузить такие объемы, как организовать этот процесс?

изображений может быть и 20 и 30 и 100

jpg forum.jpg
[Удален]
#1

Так а зачем чтоб юзер мог сотни картинок грузить? 10 картинок за раз - это вполне достаточно :)

neznaika
На сайте с 28.06.2006
Offline
356
#2
Volkpanda:
выделенный сервер, на нем сайт.

в панели покопаццо? Установите нужное вам время скриптов, в чем трабла?

VipRaskrutka:
10 картинок за раз - это вполне достаточно

это риторический ответ ;)

Дорого покупаю настоящие сайты. Не инвестирую деньги и не беру кредиты.
LX
На сайте с 11.06.2007
Offline
28
#3

Есть в PHP такая хорошая функция, как set_time_limit(0). Она отменяет ограничение на время выполнения скрипта. Попробуйте ее воткнуть в код (в безопасном режиме она не работает!).

Ѣ-программисты пишут на Petrovich (http://2lx.ru/2009/05/yazyk-programmirovaniya-petrovich/) и Ook! (http://2lx.ru/2009/06/yazyk-programmirovaniya-ook/) Нечего кушать? Подои Зорьку (http://zorkabiz.ru/?zorka=1071)! Мууу...
Volkpanda
На сайте с 25.09.2006
Offline
147
#4

все верно - 10 картинок... а на объект может быть 100 картинок... т.е. изображения коттеджа во всех ракурсах и на всех этажах, изображения корта, изображения кинозала... т.е. изображений может быть много... а как удобство - нужно в одну сессию всю процедуру завершать.

Volkpanda
На сайте с 25.09.2006
Offline
147
#5

max_execution_time = 600 ; Maximum execution time of each script, in seconds

тут как бы для понимающего человека работа.

возможно неправильно организована программистом работа скриптов, возможно такое вообще не приемлемо - грузить по хттп большой объем... кто в этом вопросе копенгаген, прошу откликнуться...

gif tks_mol.gif
N_MONax
На сайте с 22.08.2007
Offline
112
#6

Во первых, изображения логичней загружать по очереди. То есть через форму добавления дать возможность выбрать всего одну картинку.

Во вторых, разрабатывая сайт по недвижимости пришёл к выводу, что вотермарк логичнее накладывать скриптом при выводе изображения, при помощи мод_рерайт.

Так как вотермарк, например, может измениться.

В третьих - set_time_limit(0) - хорошая функция. Но мало на каких шаред-хостингах она работает. Поэтому, есть смысл брать VDS, или вообще дедик. Если брать правильный VDS, php.ini можно настраивать самостоятельно.

А на дедике скорее всего ресурсов сервера хватит на обработку всех изображений, сколько бы их не было. Особенно если не ограничевать время выполнения скрипта.

Полный спектр услуг в интернете. Быстро, Качественно, Дорого. Пишите в личку.
B
На сайте с 26.12.2006
Offline
51
#7
N_MONax:
Во первых, изображения логичней загружать по очереди. То есть через форму добавления дать возможность выбрать всего одну картинку.
Во вторых, разрабатывая сайт по недвижимости пришёл к выводу, что вотермарк логичнее накладывать скриптом при выводе изображения, при помощи мод_рерайт.
Так как вотермарк, например, может измениться.

Это конечно хорошо, но представь какая нагрузка будет на сервер, допустим при загрузке страницы где 20 фото... уже 20 обработок фото, а если фото большие? а если посещаемость не маленькая? Очень не разумно так тратить ресурсы, их и так на сервере всегда не хватает, картинки это статика, она и должна оставаться статикой!!! Если надо менять ватермарк, держи две копии фото, одна источник без ватермарка, другая с ватермарком и показывется на сайте, при новом ватермарке, генеришь один раз из источников новые фото и все.

PHP,MySQL,JavaScript,AJAX
B
На сайте с 26.12.2006
Offline
51
#8

Volkpanda, я сталкивался недавно с подобной задачей.

кури в сторону ajax upload file

в прикрепленном файле пример интерфейса того как я сделал

Форма загрузки файла одна, при выборе файла файл сразу загружается на сервер(без отправки формы, т.е. перезагрузки страницы), там обрабатыватся, накладывается ватермарк и на месте где сейчас на скрине есть "Загрузка фото" появляется превью загруженой фотки.

все, все задачи которые тебе нужны решаются быстро и просто, а главное это очень удобно пользователю!!!! Чел выбрал файл и все, тот загружается, а в это время чел может дальше печатать текст или дальше выбирать фото

ЗЫ: Караганда не субьект РФ))))

jpg ajax.jpg
Volkpanda
На сайте с 25.09.2006
Offline
147
#9
bleed:
Volkpanda
Форма загрузки файла одна, при выборе файла файл сразу загружается на сервер(без отправки формы, т.е. перезагрузки страницы), там обрабатыватся, накладывается ватермарк
ЗЫ: Караганда не субьект РФ))))

все так же, файл не перегружает форму... но очередность обработки сейчас меняем.... картинки грузились, а потом обработка шла большого количества, от чего и вешался сайт(

зы. нужно было Магадан вписать, так и знал :)

Мэкс
На сайте с 03.07.2005
Offline
67
#10
N_MONax:
Во первых, изображения логичней загружать по очереди. То есть через форму добавления дать возможность выбрать всего одну картинку.

Говорит же ТС, что надо загружать скопом.

Можно организовать очередь по обработке фоток. Т.е. оригиналы кладутся на сайт, в базу прописывается вся информация о фотке т.е. путь к оригиналу, кто хозяин и.т.д. Формирует очередь один скрипт, а разбирает эту очередь другой, запускающийся по расписанию. Причем как только он обрабатывает элемент очереди он уменьшает очередь. Сколько элементов очереди второй скрипт может обработать зараз - неважно. Главное, чтобы не менее одного. По истечении времени работы второго скрипта, если в очереди остаются еще эленменты, они обрабатываются при следующем запуске.

А чтобы основной сайт не вешался, можно рядом поставить второй сервак, который и будет разгребать очереди :)

Знание некоторых принципов легко возмещает незнание некоторых фактов. К. Гельвеций
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий