Ahoj, aplikace v produkci spouštím přes CherryPy WSGI HTTP server, jako front-end web server (který požadavky proxuje na příslušné spuštěné aplikace) používám Lighttpd.
> Jsou vaše aplikace schopné pracovat i s WSGI? To je snad standard, ne? (Aspoň pro Python 2.x, protože pro Python 3 AFAIK jaksi zatím ještě nebyly ustanoveny všechny detaily.) Zdá se mi, že WSGI je chápáno trochu špatně. WSGI není alternativa k FastCGI/CGI/... WSGI je jen slepovací vrstva, která webovou aplikaci slepí s FastCGI/CGI/... serverem/handlerem. Mod_wsgi má s WSGI společného akorát to, že poskytuje WSGI interface pro Apache, jinak je to (v daemon módu) technicky to samé jako FastCGI. > U frameworků Django a > Cherrypy to není problém, ale jsou tu i další, se kterými nemám > zkušenosti. Myslím si, že by to mohl být limitující faktor mého > hostingu. Kvůli snadnému vývoji a použití frameworků WSGI vzniklo - aby každý tvůrce frameworku nebo aplikace nemusel vymýšlet a implementovat způsob nasazení (CGI/FastCGI/HTTP server), ale jen použije WSGI interface, a uživatel ať si to nalepí kamkoliv jak chce. Klidně se takhle dá naštosovat několik webových aplikací na sebe. A ano, ony všechny ty i ne-mainstreamové frameworky (Werkzeug, web.py, Pylons/Paste, web2py, WebCore, Pesto, ...) WSGI opravdu používají (nebo alespoň podporují). Je možné se WSGI vyhnout použitím třeba mod_pythonu a jeho API. Tím ale vaše webové aplikace budou závislé na jednom konkrétním modulu jednoho konkrétního webserveru, což není moc štastné. A právě tyto situace - nasazení na hostingu - to může zkomplikovat. Nehledě na to, že třeba při vývoji může být vhodnější používat nějaký odlehčený webserver. Navíc mod_python má některé neduhy - od bezpečnosti přes důsledky plynoucí ze samotné architektury Apache až po některé interní detaily (třeba více pythonových interpretů v jednom procesu, což může ovlivnit třeba C moduly které s tím nepočítaly a používají funkce PyGILState_*()). Mod_python prostě není náhrada mod_php, chová se úplně jinak. Pokud chcete použít mod_python, nejlepší řešení je vlastně mít instanci Apache jen pro tu danou aplikaci, a to už pak vůbec nemusím použít Apache a mod_python, ale něco menšího, vhodnějšího, lépe konfigurovatelného... ad "Hodně lidí provozuje Pythona přes mod_python, dokonce to je možná doporučované řešení" - právě naopak, mod_python není zrovna příliš doporučované řešení, mimo jiné pro důvody, které jsem popsal výše. O mod_pythonu se jen hodně píše, prostě proto, že Apache a mod_<název jazyka> si lidé dlouho neumějí od webu odmyslet. Když už Apache, tak mod_wsgi v daemon módu. Nebo FastCGI. Nebo proxování na "aplikační" HTTP server :) Petr Messner 2010/4/6 Adam Strauch <c...@initd.cz>: > Ahoj, > > začal jsem provozovat pythoní hosting a chtěl bych u vás udělat takový > malý technologický průzkum. Momentálně mi všechny pythoní aplikace jedou > přes WSGI, je to rychlý, všechny weby mají své systémové uživatele a > šlape to opravdu dobře. Nicméně si nemyslím, že jiní vývojáři svoje > aplikace propojují s Apachem přes WSGI, takže se chci zeptat. Jakou > formu propojení s Apachem či jiným webovým serverem preferujete a jaké s > tím máte zkušenosti? Spíše jiné *GI nebo mod_python? > > Jsou vaše aplikace schopné pracovat i s WSGI? U frameworků Django a > Cherrypy to není problém, ale jsou tu i další, se kterými nemám > zkušenosti. Myslím si, že by to mohl být limitující faktor mého > hostingu. > > -- > Adam > _______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python