python为什么不适合web开发,python写web是主流吗
PHP在语言层面几乎没用,具体实现质量也差,但总比最致命的部署要好:没有其他语言像PHP一样适合大规模部署。基本安装Apache/mod_php后,php应用的部署简化为复制文件。
即使出于性能考虑采用了nginx/FastCGI等替代方法,额外的工作也只在于初始配置。配置完成后,所有后续部署都是文件复制。服务器重启后,通常会自动启动apache/nginx,fastcgi manager负责启动php-cgi进程等。而PHP应用基于文件的调用方式,不需要担心更多的维护。
这对于Dreamhost等虚拟主机平台来说至关重要:他们通常需要一台服务器来处理成千上万的低流量用户,而这些用户没有运行其他进程的root权限。
相关:《Python视频教程》
PHP脚本的生命周期很短,没有常驻进程,每次调用后都终止,所以对应用作者要求较低,不用过多考虑资源管理。
这和Python的部署有很大不同:Django、Tornado等大多数Python网络应用都需要单独的驻留进程(Apache/mod_python好像是个悲剧,早就更新了)。
这些进程需要额外的维护来管理它们的启动和停止,还需要额外的监控进程来处理意外退出后的重启。这就需要用户对系统有更深入的了解。
常驻进程占用系统内存,通常不可能在一台服务器上运行数百个应用程序。对于Dreamhost这样的服务提供商来说,并不适合处理WordPress博客这样的简单应用。驻留进程还要求作者对系统资源的管理、垃圾收集机制等有更深入的了解。避免内存泄露、资源占用过多等问题。
目前Python web应用最简单的部署应该是App Engine,采用了类似PHP的生命周期(请求处理限制在30秒,超时终止,常驻进程不能运行),大大简化了管理难度,但在国内无法访问……
所以从普及程度来说,Python不会超越PHP,因为大量的服务提供商无法用Python支撑现有的用户规模。但这种受欢迎程度对创业公司和专业人士来说意义不大。很多核心网络应用并不适合PHP的短期请求处理机制(如准实时推送提醒、web即时聊天等。),但更适合驻留进程来处理它们。这些都是Python、Ruby和其他语言实现发挥能量的地方。
Python的优势在于语言的简洁优雅和强大的表达能力。黑客愿意使用Python作为他们表达思想方式。
Python部署是Web开发中的问题,但是商业网站自己处理一个VPS不是问题。Python的通用性可以保证完成各种非常规的应用。
简单来说,如果你只是需要一个Web1.0内容展示网站,可以考虑php。对于Web2.0,可以考虑Python和RoR。这就是python web不火的细节。更多信息请关注盛行IT软件开发工作室的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。