- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть такая функция - getimagesize - определяет размер картинки на удаленном сайте. Так вот если этот сайт лежит, то эта функция очень сильно тормозит работу всего скрипта. Можно ли поставить на нее какой нибудь таймаут, например 3 секунды или как-то по другому решить проблемму?
Можно тащить удалённый имадж через сокеты, кидать в темп, и оттуда имаджсайз брать.
в сокетах таймаут ставится :)
У себя решаю эту проблему через mod_accel (sysoev.ru), т.е. картинки кэшируются.
getimagesize - определяет размер картинки на удаленном сайте
Не обязательно с удалённых...
Попробуй jpg к себе закачать и там дальше обрабатывать
А других вариантов как закачка к себе и кэширование нет?
А других вариантов как закачка к себе и кэширование нет?
Можно просто таймаут выставить для конкретного скрипта, если хостинг позволяет: void set_time_limit ( int seconds )
Но это полумера, так как потерянные картинки отображаться не будут, а выше вам предложили варианты гораздо надежнее.
А других вариантов как закачка к себе и кэширование нет?
Если любите отношения, то можете загружать байт по 100 от файла через сокеты, определить форматы заголовков и читать размер от туда, например для gif _ttp://www.onicos.com/staff/iz/formats/gif.html, там же и для других форматов.
Другого пути нет, только или загружать себе или ждать или вот так.
Можно выставить через ini_set значение default_socket_timeout, и ваша функция будет по нему отваливаться. Но это не шибко надежно, так как если удаленный сайт лежит не совсем, а просто очень медленно отвечает, скрипт не отвалится, а будет все равно тормозить.
А других вариантов как закачка к себе и кэширование нет?
Определение размера - это в любом случае закачка. Полная или частичная.
medaest подсказал второй неплохой вариант, но для этого желательно заголовки файлов знать хорошенько :)
Но для этого желательно заголовки файлов знать хорошенько :)
Ага и ещё писать на чем-то отличном от php :), например fast cgi на C
Ага и ещё писать на чем-то отличном от php , например fast cgi на C
Нафига это надо если челу просто размер картинки дёрнуть надобно? 😕