К списку форумов К списку вопросов
Глупый вопрос, но важный
Хлам
24.03.2004 - 15:22
Вот такая вот проблемка. Программирую на пхп, скриптик, после нескольких раз вызова оного перестают браузеры реагировать (IE вообще виснуть начинает) даже на локалхост, не говоря уже о более удаленных серверах, хотя всё вроде как пингуется. Согласен, вопроса более деревянного редко встретишь, но все-таки, здесь же присутствуют гуру своего дела, глядишь, есть какая тонкость...Единственное, чем специфичен данный скрипт, это функцией file() считывается довольно большой (где-то 2.5 мб) файл...Ну может еще вложенность инклудов, в остальном вроде как ничего криминального.
ЗЫ: перезагрузка от всего этого спасает.
Немного о себе: Windows XP, Apache 2.0.44, PHP 4.3.0
buster
1 - 24.03.2004 - 15:42
ДЛя браузера, в принципе, важно не то, что скрипт откуда-то считывает. Более критично для него то, что скрипт ему отдаёт. Если ты эти же 2.5М отдаёшь браузеру, то, возможно, просто процесс занимает гораздо больше времени, чем у тебя - терпения :о))
Zeratul
2 - 24.03.2004 - 16:42
to Хлам: у меня целерон 1000 2.5 мега считывает где-то секунд за 20. Вопрос вот какой - ты все эти мегабайты отдаешь построчно браузеру? Если да, то ты можешь поиметь зависание.
Расскажи что в скрипте делается?
buster
3 - 24.03.2004 - 17:17
Интересно, а за сколько же 2.5 мега будет считывать мой целерон на 2000? :о)))
Cool
4 - 24.03.2004 - 17:33
to Хлам: была и есть такая же фигня. Я писал тоже скрипт, для считывания больших файлов из инета. Комп вообще переставал реагировать на сеть после какой-нибудь ошибки в скрипте. Даже варнинг, типа возвращенный mysql результат пуст вызывал подвисание.. спасал только ребут
buster
5 - 24.03.2004 - 17:46
Нас ребут, а мы крепчаем :о))
Ребяты, пока просто слова. Что конкретно делает скрипт?
Jup
6 - 24.03.2004 - 17:54
Если скрипт выводит все это в таблицу, то браузер просто вешается в ожидании пока формирование таблицы будет закончено.
Mips
7 - 24.03.2004 - 18:05
это вы чё то не так наскриптили.
Mips
8 - 24.03.2004 - 18:08
на счёт таблицы.... пока таблица не будет полностью загружена - ничего вы не увидите. По крайней мере так в ИЕ.
С другой стороны... кому нафиг нужна таблица, которая весит сотни кб?
наркоМан
9 - 25.03.2004 - 08:00
у меня браузер подвисал когда в текстареа выводил много строк... точнее сказать тормозил, т.к. через некоторое время всё ок становилось...
код в студию!!!
Хлам
10 - 25.03.2004 - 08:16
Да не отдаются браузеру эти 2.5 мега. Просто файл этот парсится определенным образом, а в браузер вываливается, ну в худшем случае килобайт 15-20, не более того. Дурость, конечно, основательная, но ощущение, что какие-то не лады с памятью. Т.е. считываю в переменную этот файл, а после работы скрипта, эта переменная не совсем корректно освобождается. Правда вставил и вручную уничтожение - нифига не решило. Что думаете по этому поводу?
Mips
11 - 25.03.2004 - 08:50
ты случаем используешь не функцию ли ereg?
Хлам
12 - 25.03.2004 - 08:58
Нет. Дело не в том, что скрипт долго выполняется и я не могу дождаться окончания его работы. Дело в том, что после нескольких его вызовов, ощущение, что что-то занято (не знаю, порт может какой, может какая компонента, библиотека) и не освобождается. Пусть даже мой скрипт долго выполняется, но это ж не должно мешать новой копии браузера открывать другие страницы, исключим на всякий случай локальные, например, кубань.ру. Так ведь?
Mips
13 - 25.03.2004 - 09:17
Телепатией я не обладаю. Тут ужно видеть код, чтобы о чём-то можно было судить.
Хлам
14 - 25.03.2004 - 09:35
Ладно, в принципе вопрос снимается. Я знал, конечно, что практически бесполезно с таким пространным вопросом, но надеялся, может даже на чудо. У кореша, на его машине, в принципе все нормал, наверно, дело в апаче, все-таки, много слышал, что второй апач еще не доработан. А может в самой оси, но вообщем так и не разобрался
Zeratul
15 - 25.03.2004 - 10:17
В самом Апаче 2 английским по белому написано о нежелательности его использования в качестве веб-сервера.
Дальше. У тебя там всякие set_time_limit стоят в PHP?
Вывод в браузер происходит в ходе работы скрипта или по его завершении? Ощущение подвисания происходит если у тебя данные на экран валятся только после выполнения. flush() ставил?
Mips
16 - 25.03.2004 - 10:23
вирусы погоняй. Там их поди целый букет :)

К списку вопросов на форуме Веб-дизайн

>>