Dan Lukes wrote: > Miroslav Lachman napsal/wrote, On 12/15/07 23:29: [...] >>Jinak tedy aby to s tim lockf melo smysl (chapu-li to spravne), tak ho >>musi pouzivat i ten uzivatel, ktery si spravuje svuj web. Tedy i on >>misto puvodniho: >>python manage.py runfcgi `head -1 django-runfcgi.conf` >>bude muset spoustet >>lockf -t 0 tmp/django-runfcgi.lock python manage.py runfcgi `head -1 >>django-runfcgi.conf` > > > A on ten uzivatel opravdu pise na prikazove radce takovehle zbesilosti > ? Ja bych ocekaval, ze tohle cele ma napsane v nejakem scriptu, ktery > vola aniz zna/zkouma jeho obsah. Takze to, ze se jeho obsah zmeni ani > nezjisti.
Pokud je mi znamo, tak to tak opravdu pousti, ale neni problem uzivateli predhodit hotovy script s vysvetlenim "takhle ho spoustej a takhle ho ukoncuj". > Ale zpet k otazce - ano, musi. > > "Normalni" by bylo, kdyby program, ktery je napsan tak, ze ma bezet jen > jednou, protoze jinak je to problem, mel v sobe nejakou vhodnou pojistku > zabudovanou sam (napriklad zamek, stejne jako to dela lockf). U sitovych > serveru tomu nejcasteji brani to, ze dva nemohou soucasn eotervit socket > stejneho cisla. Nevim, jak je to tam zarizene, ale vim, ze kdyz jsem ten script pro spusteni napoprve napsal a nekolikrat spustil, tak jsem pak mel v systemu nekolik fastcgi procesu a jejich rodic pak nemel to PID, ktere bylo ulozeno v PID file a tak to pak cele neslo zastavit jednoduchym kill `cat tmp/django-runfcgi.pid`. Proto jsem tam pak dopisoval tu kontrolu existence PID a... > Kdyz uz se ale stalo, ze ji v sobe nema a "dobastlovava" se to tam > externe, musi vsichni hrat hru se stejnymi pravidly aby to fungovalo. Osobne s Django nepracuju, takze ho neznam nijak dopodrobna, ale co mi rukama prosel manual, tak tenhle zpusob spousteni je oficialni a z mych zkusenosti si to nijak dobre nehlida, ze bezi jen jedina "instance". Podobny script mam i pro mongrel pro Ruby On Rails a tam to hlidane je a celkove je to dotazene vic k "dokonalosti", takze puvodne jsem si myslel, ze jen vezmu svuj existujici script pro mongrel a napasuju ho na django, ale nachazim v tom cim dal tim vic nedostatku ;o( > Jinak jeste jednou radsi pripominam, ze se ten script musi spustit tak, > aby se sam nedaemonizoval - a takze bude ten lock potreba spoustet v > ramci startovaciho scriptu na pozadi. Nastesti to tak pustit lze (vim, ze jsou i programy, co automaticky daemonizuji a "nelze" se tomu vyhnout) >>muzeme jit spat > > Jak kdo ;-) No taky tu jeste neco tak na hodinku mam :) Mirek -- FreeBSD mailing list ([email protected]) http://www.freebsd.cz/listserv/listinfo/users-l
