python3.6 asyncio paramiko_最近研究 python 的一个小失落

serial

2016-08-01 21:03:58 +08:00

@wizardforcel @kingmo888

Of cause. Python 甚至在某些方面取代了 R 语言。然而, matlab 和 R 是用来建模的,不是做应用的 (它们甚至连完整的编程语言特征都不具备)。

什么样的人在使用 matlab 和 R ? 科学研究领域。他们 80% 的知识是懂电路、生物、化学、..., 20% 的知识是懂 Python 、 matlab 、 R 。他们的任务就是用这些语言重现、测试自己的实验。

那么,问题是,你是打算成为这样的科研者,还是一个专职程序员?如果你,一个 80% 的知识是懂 Python 、 matlab 、 R , 20% 的知识是懂电路、生物、化学、...,那么毫无价值。

@mengzhuo “两个游戏逻辑服务的表示, Python 的理念是,不够就堆机器”

1. 你的“游戏逻辑服务”,多少用户?

2. 每秒并发请求能到多少?

3. 做过 benchmark 、压力测试吗?

4. 数据量能多少?玩过 TB 级别的数据存储吗?

5. 什么是阻塞 IO ?什么是非阻塞 IO ?用了哪一种?

@WhiteT

你可以举个 “那么多新兴互联网公司要选择 Python ” 的例子。 Twitter 把他们的业务从 ruby 切换到了 Scala ; Facebook 在他们那丑陋缓慢的 PHP 上做了 C++ 适配层(这当然花了并且还在花他们很多钱); Dropbox 正在把自己的分布式文件系统从 GO 切换到 Rust 。

---------------------------------------------------

如果你要做 Web service ,那么 3.5 asyncio 是个不错的选择,非阻塞 IO 的 wrapper 。然而,一个问题就是 Python 2/3 没有非阻塞 IO 的第三方库支持。 pymongo ( mongodb 客户端)、 pymysql ( mysql 客户端)、 docker-py ( docker 客户端)、 paramiko ( ssh 客户端)、...,它们都是基于 httplib ,没错,它们都是同步的!!!

这就表示,它们的并发 IO === 渣。

如果你想做非阻塞应用,为了高并发,你必须用 asyncio 或者其他非阻塞 IO 库,重写这些库。最典型的例子 --- Openstack 。

就我所知,非阻塞 IO 的流行语言和库:

* C --- libev libevent --- 代表作 Nginx

* Nim --- asyncdispatch --- 代表作

* Erlang --- stdlib --- 代表作 Whatsapp

* Java --- nio netty --- 代表作 Hadoop

* Golang --- stdlib --- 代表作 Docker

* JavaScript --- node.js --- 代表作 Joyent 云服务

至于文件系统,动态语言无法胜任, Java 也无法胜任,这是 C 、 C++、 D 、 Nim 、 Rust 这些系统语言的战场。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值