powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / насколько асинхронен FastCGI
9 сообщений из 9, страница 1 из 1
насколько асинхронен FastCGI
    #34937344
_sky_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрй день.

Сегодня открыл для себя FastCGI. Очень интересная, судя по всему, технология. Есть только один вопросик, и как всякий ленивый русский, мне проще спросить, чем все настраивать и самомы испытывать.

Допустим, есть код, взятый с какого-то сайта, описывающий fastCGI:

#include<fcgi-stdio.h>
void main(void){
while( FCGI-Accept( ) >=0 ){
printf("Content-type: text/html\r\n");
printf("\r\n");
printf("Hello Network World!
\r\n");
}
exit(0);
}


Вопрос такой: а что будет, если у меня код внутри while выполняется, допустим, 10 секунд.
10 секунд сервер на другие запросы не отвечает или там внутри как-то реализована многопоточность или еще что?
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34937823
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
однопоточный сервер – это, надо сказать, даа…
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34937986
_sky_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так вот и я про то же. Судя по этому примеру поток всего один, но умные люди такое серверное решение не придумают, но ведь хочется наверняка знать, а не наблюдать потом сплошной поток отказов. Где там что зарыто, чтобы многопоточность была? Или за меня уже все продумали, и я на nginx вешаю, допустим, этот же пример но с включенной задержкой вывода на пяток секунд, то что я получу? Висяк или все будет красиво?
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34938021
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_sky_Судя по этому примеру поток всего одинпо какому примеру???

_sky_Где там что зарыто, чтобы многопоточность была?нуу… возьми исходники своего http-сервера, думаю, там увидишь, где многопоточность зарыта.
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34938138
_sky_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Стоп. Вы, кажется не совсем поняли. Это не CGI, это FastCGI, предполагается, что он висит постоянно в памяти и обрабатывает запросы от сервера. В данном примере он hello world выдает.
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34938179
maXmo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то есть он отдельным процессом запущен?
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34938759
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это от сервера зависит. Для апача в конфиге mod_fastcgi задается сколько процессов запускать. Если свободных процессов нет, естественно в очередь.
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #34940202
daevaorn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще-то многопоточность это дело fastcgi сервера, т.е. приложения которое ты пишешь.
Веб сервер в данном случае выступает ввиде прокси сервера между внешним миром и сервером fastcgi. Сам fastcgi сервер всегда висит в памяти(это одна из состовляющих его fast'ности) и биндит либо какой-то сетевой порт, либо юникс сокет. Через которые и осуществдялется взаимодействие с веб сервером. При поступлении запроса от веб сервера fastcgi сервер должен его обработать и выдать результат в соответсвии с протоколом. Как уж он это делает(threaded или fork) рашает реализация
...
Рейтинг: 0 / 0
насколько асинхронен FastCGI
    #35458500
Ega
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения, что поднимаю тему из небытия.
Так всё-таки, как быть с асинхронностью?
Простой пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
#include<fcgi-stdio.h>
void main(void){
while( FCGI-Accept( ) >= 0  ){
printf("Content-type: text/html\r\n");
printf("\r\n");
sleep( 30000 ); // не знаю как в C, короче задержка тридцатисекундная.
printf("Hello Network World!
\r\n");
}
exit( 0 );
}

Вопрос: а можно ли как-то это дело прервать?
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / насколько асинхронен FastCGI
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]