Одновременное выполнение скрипта

2kish

Новичок
Здравствуйте уважаемые гуру PHP.
У меня такая ситуация.
На сервере есть файл index.php. В нем код выполняется 10 сек.
Если (почти) одновременно запустить с двух браузеров этот скрипт www.test.ua/index.php,
то сервер сначала обрабатывает скрипт для первого браузера, а потом когда закончит выполнять,
то начинает выполнять для второго браузера. Как сделать так чтоб скрипт выполнялся параллельно для двух браузеров?

Примечание.
Если сделать файл index2.php с таким же кодом как и в index.php и одновременно в первом браузере запустить
www.test.ua/index.php, а во втором запустить www.test.ua/index2.php, то запросы выполняются параллельно и возвращают респонс практически в одно и то же время.

Спасибо.
 

WMix

герр M:)ller
Партнер клуба
2kish
они запускаются параллельно, поверь на слово. а вот нафига ты процессы сериализировал и каким образом ответь сам, из URL это не понятно!
 
Последнее редактирование:

ksnk

прохожий
запустить с двух браузеров этот скрипт
Это как это он запускается? В 2-х разных вкладках одного броузера, или действительно в 2-х разных. В Хроме и Фоксе, к примеру.

Типичная причина такого поведения - сессия открывается и блокируется. Пока она не разблокируется - второй скрипт ждет.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
А можно узнать, что скрипт там эти 10 секунд делает? Может и не надо ждать так долго? Оптимизировать, вынести в фоновые задачи?
 

2kish

Новичок
Это как это он запускается? В 2-х разных вкладках одного броузера, или действительно в 2-х разных. В Хроме и Фоксе, к примеру.

Типичная причина такого поведения - сессия открывается и блокируется. Пока она не разблокируется - второй скрипт ждет.
в двух разных браузерах
 

2kish

Новичок
У меня проэкт на Zend Framework. Некоторые скрипты я поставил на крон который дергает юрл например www.site.ru/cron/job1
Пока этот юрл не вернет ответ другие юзеры не получают ответ от сервера по другим урлам (пример: www.site.ru/users ). Точка вохода в зенду идет всегда через один файл index.php

Аналогично експерементировал с скриптом в котором ставил код:

PHP:
<?php
    sleep(10);
   echo "done";
 

2kish

Новичок
Вопрос решен. Проблема была в локальном сервере. На хостинге все хорошо.
Всем спасибо за помощь.
 
Сверху