The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Проблемы с CGI, !*! rocsolanka, 24-Фев-05, 14:45  [смотреть все]
Добрый день! Не могу решить следующую проблему: Есть CGI скрипт, который выполняется достаточно долго.(т.к. запускает sql скрипт,который работает с большой БД ). Так вот, браузер не дожидается окончания работы скрипта и выдает ошибку "Сервер недоступен". Кроме того, браузер сам пытается переконектится, в результате чего у меня запускается 2 копии sql скрипта. Как решить такую проблему?
  • Проблемы с CGI, !*! dev, 13:44 , 25-Фев-05 (1)
    >Добрый день! Не могу решить следующую проблему: Есть CGI скрипт, который выполняется
    >достаточно долго.(т.к. запускает sql скрипт,который работает с большой БД ). Так
    >вот, браузер не дожидается окончания работы скрипта и выдает ошибку "Сервер
    >недоступен".

    Надо запускать этот скрипт в фоне, а юзеру показывать страничку с прогресс-баром и обновлять ее каждые несколько секунд.

    >Кроме того, браузер сам пытается переконектится, в результате чего у
    >меня запускается 2 копии sql скрипта. Как решить такую проблему?

    Создавать лок где-нибудь при старте скрипта и удалять его при завершении. Не забыть про аварийное завершение скрипта.

    • Проблемы с CGI, !*! rocsolanka, 16:07 , 25-Фев-05 (2)
      А нет ли возможности просто увеличить таймаут для браузера, чтоб ждал окончания скрипта подольше?


      >>Добрый день! Не могу решить следующую проблему: Есть CGI скрипт, который выполняется
      >>достаточно долго.(т.к. запускает sql скрипт,который работает с большой БД ). Так
      >>вот, браузер не дожидается окончания работы скрипта и выдает ошибку "Сервер
      >>недоступен".
      >
      >Надо запускать этот скрипт в фоне, а юзеру показывать страничку с прогресс-баром
      >и обновлять ее каждые несколько секунд.
      >
      >>Кроме того, браузер сам пытается переконектится, в результате чего у
      >>меня запускается 2 копии sql скрипта. Как решить такую проблему?
      >
      >Создавать лок где-нибудь при старте скрипта и удалять его при завершении. Не
      >забыть про аварийное завершение скрипта.


  • Проблемы с CGI, !*! XAnder, 19:25 , 28-Фев-05 (3)
    >Добрый день! Не могу решить следующую проблему: Есть CGI скрипт, который выполняется достаточно долго.(т.к. запускает sql скрипт,который работает с большой БД ). Так вот, браузер не дожидается окончания работы скрипта и выдает ошибку "Сервер недоступен". Кроме того, браузер сам пытается переконектится, в результате чего у меня запускается 2 копии sql скрипта. Как решить такую проблему?

    Интересно ведёт себя Ваш браузер. Кстати, какой он породы?

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

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

    Вообще, dev дело говорит - прислушайтесь. Я же от себя добавлю такой рецепт:

    1. оптимизируйте запросы к БД до предела;

    2. если не поможет, оптимизируйте саму БД, играйтесь с типами столбцов, с индексами и т.п. техническими деталями;

    3. если не поможет, попробуйте перепроектировать БД с прицелом на скорость, можно пойти на денормализацию в разумных пределах;

    4. если не поможет, смотрите глобальнее: меняйте soft- и hardware, если, конечно, позволяют средства;

    5. если добрались до этого пукта, то всё - затык, сделать хорошо не получается - сделайте, чтобы хотя бы выглядело хорошо (уж не пана ли Вильяма Гейтса это прынцип? :) ), то есть, делайте прогресс-бар и всё такое.

    • Проблемы с CGI, !*! rocsolanka, 14:46 , 01-Мрт-05 (4)
      Спасибо, уже сделала прогресс-бар :-)


      Добрый день! Не могу решить следующую проблему: Есть CGI скрипт, который выполняется достаточно долго.(т.к. запускает sql скрипт,который работает с большой БД ). Так вот, браузер не дожидается окончания работы скрипта и выдает ошибку "Сервер недоступен". Кроме того, браузер сам пытается переконектится, в результате чего у меня запускается 2 копии sql скрипта. Как решить такую проблему?
      >
      >Интересно ведёт себя Ваш браузер. Кстати, какой он породы?
      >
      >>А нет ли возможности просто увеличить таймаут для браузера, чтоб ждал окончания скрипта подольше?
      >
      >Даже если и можно, не советую так поступать. Во-первых, браузеров много и
      >под всех не подстроишься. Во-вторых, кроме браузера есть ещё и юзер,
      >который его мышкой тыкает :) Ентому юзвЕрю может надоесть ждать и
      >он тыкнет на обновление странички, а Вы вернётесь к той же
      >проблеме.
      >
      >Вообще, dev дело говорит - прислушайтесь. Я же от себя добавлю такой
      >рецепт:
      >
      >1. оптимизируйте запросы к БД до предела;
      >
      >2. если не поможет, оптимизируйте саму БД, играйтесь с типами столбцов, с
      >индексами и т.п. техническими деталями;
      >
      >3. если не поможет, попробуйте перепроектировать БД с прицелом на скорость, можно
      >пойти на денормализацию в разумных пределах;
      >
      >4. если не поможет, смотрите глобальнее: меняйте soft- и hardware, если, конечно,
      >позволяют средства;
      >
      >5. если добрались до этого пукта, то всё - затык, сделать хорошо
      >не получается - сделайте, чтобы хотя бы выглядело хорошо (уж не
      >пана ли Вильяма Гейтса это прынцип? :) ), то есть, делайте
      >прогресс-бар и всё такое.


      • Проблемы с CGI, !*! Tenkoff, 07:44 , 13-Мрт-05 (5)
        есть решение проще, если сильно не времени решить сразу
        выдаем в OUTPUT клиенту нечто вроде

        расставь по коду в разных функциях, чтобы клиенту постоянно шел траф, и браузер не обрывал по таймауту

        print "<!--working--!>\n";




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру