python不适合web开发的原因:
1、性能堪忧。
写一个http服务器只输出hello world,单机跑一千个qps就够了。有了netty、golang、nodejs,就有上万种。
对于 Internet Web 应用程序,性能是命脉。如果qps上不去,用户会觉得卡住了,卡住的时候会讲一个屁的用户体验。
当然,也有一些提高性能的解决方案,比如使用异步龙卷风。但是玩了之后发现还是略胜一筹,性能还是比上面提到的技术低一个档次。还有一个很偏的bjoern wsgi可以大大提升http的性能,但是偏高的部分是因为bjoern是用c写的。但是,一旦跑到用python写的业务代码上,就跟截肢一样慢。
性能低应该有两方面的原因,
一个。因为python默认实现是单线程的,很多重要的模块都不支持多线程。所以使用多核更加困难。当然也不是不可能,比如用多进程来利用多核。但是多进程仍然不是那么好用。
b.python 的实现性能不够好。 JavaScript 一开始很慢,可能会卡住,但后来 Google 采取了行动,拿出了 V8 引擎,JavaScript 立刻快如闪电。最早的 Java 也像蜗牛一样慢。后来,在 SUN 让牛人想出 Hotspot 虚拟机之后,Java 的性能立刻有了质的飞跃。 PHP 最近看到了巨大的性能改进。但是 Python 实在是太慢了
2、Python的跨平台开发比较麻烦。
Python下要想实现跨平台开发非常麻烦。
一些扩展包在Windows下安装极其麻烦,比如大名鼎鼎的图像处理包PIL。在Windows上不容易找到这个安装包,这个包也不再维护了。它被一个叫做枕头的包裹所取代,但我很生气。就是枕头包不是100%兼容PIL,需要做一些小改动。
另外,有些包根本不提供windows版本,比如kyotocabinet,著名的kv存储引擎。这是一个巨大的头痛。
现在团队里基本上都是用windows开发的,但是程序部署是在linux上的。
最后给大家的解决方案是在windows上安装一个linux虚拟机,在虚拟linux上进行开发,这样服务器和开发环境可以保持一致。但这已经够麻烦了,性能严重受损,虚拟机和物理机之间的切换极其麻烦。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python raise 触发异常的实现01/06
- ♥ 2019年python好学吗?01/13
- ♥ 如何编写python模块09/07
- ♥ python2.0和3.0有什么区别09/25
- ♥ python socket连接客户端的方法01/07
- ♥ python序列操作整理01/05
内容反馈