Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > cz.comp.lang.python > #3042
| From | Honza Král <honza.kral@gmail.com> |
|---|---|
| Newsgroups | cz.comp.lang.python |
| Subject | Re: [python] Roboti, REST, Flask? |
| Date | 2015-09-29 18:31 +0200 |
| Organization | Netfront http://www.netfront.net/ |
| Message-ID | <mailman.44.1443544322.3323.python@py.cz> (permalink) |
| References | (4 earlier) <55F2C930.50408@firma.seznam.cz> <mailman.12.1442451320.3323.python@py.cz> <53a3a6b3-ad14-4017-b008-9b283867ffef@googlegroups.com> <mailman.43.1443534670.3323.python@py.cz> <246451bc-39ef-492a-a53b-963d82dd6bd9@googlegroups.com> |
2015-09-29 16:28 GMT+02:00 Pavel Schön <pavel@schon.cz>: > Moje knihovna nikdy nebyla nasazena v produkci, je to ciste experimentalni zalezitost, hricka pro studijni ucely. Autor puvodniho dotazu hleda neco pro studijni a vyukove ucely, pokud se nepletu. Obzvlast pro vyukove ucely je skutecne vhodne vybrat dobra reseni, v tomto pripade tedy neco ze std knihovny nebo neco co funguje a plni sliby Nejhorsi co se muze stat je, ze se nekdo nauci spatne postupy a principy, proto je vzdy dulezite, obcas i za cenu komplexity (django vs flask) nebo extra zavislosti (gunicorn nebo twisted na normalni server vs custom tcp socket), zvolit reseni ktere podporuje dobre navyky. V tomhle pripade je dobry navyk i nevynalezat kolo. > Server si v zadnem pripade nepamatuje stav zamku pri restartu, klientska cast neresi vypadky spojeni, neimplementuje reconnect apod. Pokud nastane chyba v TCP, na strane klienta se vyhodi vyjimka socket.error a je jen na nem, jak se zachova. > > Knihovna take neresi deadlock, ale to ani normalni threading neresi deadlocky. Jejich predchazeni je uz mimo ramec teto diskuze. > > BTW, nad jednoduchym lockem lze stavet vyssi primitiva, semafory apod. > > > Dne úterý 29. září 2015 15:51:15 UTC+2 Petr Messner napsal(a): >> Zajímavý kus kódu. Co se stane, když se server restartuje, zůstane stav zámků zachován? Co se stane, když klient požádá o acquire a musí čekat, protože zámek má již někdo jiný, ale zrovna v tu chvíli vypadne síť, spojení se ukončí a recv() vrátí prázdný řetězec? >> >> >> Když už řešit zamykání takhle síťově, tak aspoň pořádně :) Viz např. Redis (http://antirez.com/news/77) Apache Zookeeper, Apache Helix... >> >> >> Bohužel, distribuované algoritmy nejsou tak jednoduché, že by do "normálního" algoritmu stačilo přidat sokety. >> >> >> PM >> >> >> Dne 29. září 2015 15:30 Pavel Schön <pa...@schon.cz> napsal(a): >> Ahoj, >> >> >> >> dovolim si navrhnout pure python reseni na strane serveru zalozene na threadingu a lockach. Kdysi jsem napsal jednoduchy lock manager. Viz: >> >> >> >> http://code.activestate.com/recipes/578194-distributed-lock-manager-for-python/ >> >> >> >> Ve zkratce: >> >> >> >> - na serveru bezi TCP daemon (./dlm.py), ktery obsluhuje klienty. >> >> - na klienty umistis tentyz soubor dlm.py, ktery si klientska aplikace importne a vola podle potreby. >> >> >> >> Aplikace potom funguje velmi podobne, jako bys programoval s mutexy. >> >> >> >> _______________________________________________ >> >> Python mailing list >> >> pyt...@py.cz >> >> http://www.py.cz/mailman/listinfo/python >> >> >> >> Visit: http://www.py.cz > > _______________________________________________ > Python mailing list > python@py.cz > http://www.py.cz/mailman/listinfo/python > > Visit: http://www.py.cz --- news://freenews.netfront.net/ - complaints: news@netfront.net ---
Back to cz.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
Re: [python] Roboti, REST, Flask? Marek Nožka <marek@tlapicka.net> - 2015-09-11 15:56 +0200
Re: [python] Roboti, REST, Flask? Pavel Schön <pavel@schon.cz> - 2015-09-29 06:30 -0700
Re: [python] Roboti, REST, Flask? Honza Král <honza.kral@gmail.com> - 2015-09-29 15:48 +0200
Re: [python] Roboti, REST, Flask? Pavel Schön <pavel@schon.cz> - 2015-09-29 07:28 -0700
Re: [python] Roboti, REST, Flask? Honza Král <honza.kral@gmail.com> - 2015-09-29 18:31 +0200
Re: [python] Roboti, REST, Flask? Pavel Schön <pavel@schon.cz> - 2015-09-29 11:09 -0700
csiph-web