>> раз уж такая тема.. то спрошу:
>> nginx умеет ли запускать fastcgi в режиме, когда сокет передаётся через файловый
>> дескриптор (дескриптор под номером 0 или 1), а не через файловую
>> систему?
> STDIN, STDOUT чтоле?
> Нет, да и зачем?
> Вы же понимаете, что при работе через "файловый" unix socket дисковая система
> не используется?да, во время unix socket -- дисковая система не используется.
но файловая система *используется* (без использования дисковой системы).
это НЕ элегантно. :)
почему не элегантно(?), пояснение: в момент когда два процесса уже "знают" друг-друга (так как один из них родитель а второй потомок) -- уже нет смысла задействовать файловую систему лишь для того чтобы эти два процесса общались друг с другом. у этих процессов уже и так есть более тесная (родственная) связь!
в данном случае: более элегантно -- манипулировать файловыми дескрипторами и их номерами (нужные файловые дескрипторы -- наследуются во время fork(). а их номера сохраюятся неизменно у потомков)
а файловый дескриптор -- может ссылаться не только на PIPE но и на SOCKET. (вполне нормально что внутри STDIN -- будет положен не PIPE а SOCKET :))
более того! Linux умеет передавать (от одного процесса к другому) через PIPE -- новые файловые дескрипторы! и это опять-таки делается без использования файловой системы... хотя уже этот подход в FastCGI не используется..