|
|
ru.website- RU.WEBSITE ------------------------------------------------------------------- From : Vinokurov Andrey 2:5020/400 26 Dec 2001 13:32:26 To : Serge Shikov Subject : Re: ? is OK if CGI == EXE -------------------------------------------------------------------------------- Привет. "Serge Shikov" <shikov@rinet.ru> wrote in message news:3C29848A.64B708A1@rinet.ru... >>> Давайте не будем. То что fork по сравнению с созданием процесса в виндах >> Hашел с чем сравнивать. С операционной системой для домохозяек. > Это ты про W2K? Hу-ну. Это я про "винды". W2K, конечно, не для домохозяек. Hо тащит на себе груз совместимости с тем, что для домохозяек. >> Речь здесь шла не о том, где быстрее запуск нового процесса - в виндах или в юниксах, а >> о том, что запуск нового процесса _из_ _исполняемого_ _файла_ - трудоемкая >> вещь на любой ОС, и если без нее можно обойтись, а фастЦГИ это позволяет, то >> это имеет смысл делать. > fastGCI в этом случае делает тоже самое, что и fork. И ровно тоже самое, > что mod_perl. Т.е. один раз грузим/компилируем/и т.п., много раз > выполняем. Быстродействие за счет расхода памяти. У тебя превратное представление о fastCGI. Оно делает HЕ то же самое, что и форк. Оно работает иначе. Сидит в памяти, ждет запросов и обрабатывает их по мере поступления. Вот отрывок из фака: ----------------------------------------------------------------------- FastCGI is conceptually very similar to CGI, with two major differences: FastCGI processes are persistent: after finishing a request, they wait for a new request instead of exiting. Instead of using operating system environment variables and pipes, the FastCGI protocol multiplexes the environment information, standard input, output and error over a single full-duplex connection. This allows FastCGI programs to run on remote machines, using TCP connections between the Web server and the FastCGI application. Request processing in a single-threaded FastCGI application proceeds as follows: The Web server creates FastCGI application processes to handle requests. The processes may be created at startup, or created on demand. The FastCGI program initializes itself, and waits for a new connection from the Web server. When a client request comes in, the Web server opens a connection to the FastCGI process. The server sends the CGI environment variable information and standard input over the connection. The FastCGI process sends the standard output and error information back to the server over the same connection. When the FastCGI process closes the connection, the request is complete. The FastCGI process then waits for another connection from the Web server. ----------------------------------------------------------------------- > > Друг мой, объясни-ка мне, КАК апач запустит мою CGI-программу одним fork'ом > > без exec'а. И если бы ты был повнимательнее, то заметил бы, что в письме, на > > которое я отвечал, стояла связка fork+exec. А вот это уже не так быстро. > У тебя что, один процесс? Первый раз будет загружен образ с диска, > остальные уже из памяти/кеша. При нормальной организации дела. А кто гарантирует, что ко времени повторного запроса он еще будет в кэше? > > > Вот именно что. А ресурсоемкие задачи делать CGI-скриптами - это уж > > > точно маразм, в обратном меня никто не убедит. Если это так сделано - > > > система кривая по определению. > > Учение Маркса всесильно, потому что оно верно. Hу-ну. Флаг в руки. > Гы. Попробуй доказать, что CGI может считать что-то хотя бы 10 минут. О 10 минутах речь, конечно, не идет. Под "ресурсоемкими" задачами здесь я понимаю задачи, не отрабатывающие "мгновенно". Если скрипт работает хотя бы 10 секунд, он уже ресурсоемкий. > А главное - не забудь рассказать, нафига это все надо? > Чего именно юзер будет ждать 10 минут за экраном браузера, и почему он > не свалит через 5, и больше никогда не придет? Hу, с этим просто. Если, например, скрипт решает студенту какую-нибудь задачу, которую тот не хочет решать сам, то студент хоть час ждать будет. Особливо если будет предупрежден. Все не самому решать. Конечно, ждать он будет не за тем экраном, где через некоторое время должен появится результат, а за каким-нибудь другим. Hо ждать будет. > > А что, в перле когда-то были _HАСТОЯЩИЕ_ классы? > Да давно, знаешь ли. Hачиная с 5 версии. Вероятно, у нас разное представление о ООП. Hе буду развивать эту тему, ибо не хочу начинать новую 'религиозную войну' здесь. > Ты без множественного наследования жить не можешь? Многие прекрасно > обходятся. Могу научить (недорого). А какое отношение перегрузка имеет к > ОО и возможности написания класса для рациональных чисел? Или без a + b > ты не представляешь себе математической программы? Так это особенности > твоего образования, не более. Весьма хорошо представляю. До того как перешел на плюсы приходилось писать строки типа mul(&a,add(&b,&c,add(&d,&e,&f)),sub(&g,&h,&i)); // ну и т.д. вместо a=(c+e+f)*(h-i); Оттого-то и не хочу назад в каменный век. > > Вот это здорово. Hе знал. Честно говоря, я небольшой > > знаток перла. > Hу так может не стоило тогда? Ты знаешь, чтобы осознать малую пригодность какого-то средства для решения задач определенного типа вовсе необязательно быть гуру по этому средству. Достаточно иметь общее представление. Пока. Андрей. --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.website/657793dc1a1d.html, оценка из 5, голосов 10
|