应该怎么搭配比较好呢。 flask bottle tornado django ? mac windows ubuntu? py2 py3? 另外有什么什么好的入门教程推荐。
看了 php laravel ci 的等框架性能排行,整个感觉就是 PHP 的生态圈太乱了,看似很多可选,实际上可选的方向混乱。再看看 flask express go revel 等,我对 php 的性能有点心灰意冷失望了。 https://www.techempower.com/benchmarks/#section=data-r11&hw=peak&test=query
另外,这里有一个 GitHub 上的 web 框架星星排行榜,请问这个排行能说明什么问题吗,能决定什么吗?
https://github.com/showcases/web-application-frameworks?s=stars
还有就是,从 php 换为 python 开发 web ,会有很多的坑要要踩和轮子要造吗。会更加消耗生命时间和精力吗。如何看待短乎,果壳, douban 等 python 站很多年了,格调虽然高,但是功能简陋,依然没有老慢车 wordpress 等的丰富的事实呢。
如果我下决心换一个 web 语言 php,整体上说,从未来潜力上说, python 会是比 nodejs golang 更好的选择吗。
1
shajiquan 2015-12-18 13:05:16 +08:00
网上有很多比较、评测、观点。我的建议是,了解一下不同框架的主要目的、构成。再看一下各自的 tutorial 。选一个自己更中意的,马上开始。
如果有可能,选择更适合你当前工作、项目、团队的那个,有更多实践、交流机会。 欢迎使用 Golang …… |
2
13k 2015-12-18 13:15:58 +08:00
```如何看待短乎,果壳, douban 等 python 站很多年了,格调虽然高,但是功能简陋,依然没有老慢车 wordpress 等的丰富的事实```很多时候这并不是技术决定的
|
4
loading 2015-12-18 13:23:19 +08:00 via Android
为了更高的性能,我用 python 开发的,大部分都是返回 json 的,但又没偷懒到只是 restful api 。
|
5
loading 2015-12-18 13:26:55 +08:00 via Android
所以我如果需要用 go 重写的话,比较简单。
后续开发的,估计会把更多的移到前端,做成真正的 restful |
6
ljdawn 2015-12-18 15:13:00 +08:00
选用合适的框架就行了.
|
7
ljdawn 2015-12-18 15:14:17 +08:00
Django 是个相对笨重的一站式解决方案. 对于后台管理是实现的好的.
Flask轻量级. |
8
sololivan 2015-12-18 15:24:39 +08:00
django+gunicorn
tornado+pypy 可以应付各种高并发长链接 |
9
useyes 2015-12-18 15:27:27 +08:00
web 领域来时来踩 rails 的坑吧。
|
10
sox 2015-12-18 15:31:32 +08:00
Let's go.
|
11
maddot 2015-12-18 15:35:13 +08:00 1
原来在楼主心目中,只有像门户网站那样满是密密麻麻的链接和栏目的网站才叫功能丰富
|
13
fy 2015-12-18 15:42:30 +08:00
框架: flask tornado django
入门: Flask ,资料就是官方文档 版本: py3 py3 从语言层面上解决了混乱的编码问题(虽然这是 2 、 3 分裂的主要原因),以及更多细节更为合理(例如 range 成为迭代器,不用再出现 range 性能有问题 xrange 有数值上限,这样的例子很多)。既然是新项目,没有历史包袱,直接上 3 ,万一有需要用 2 也不是很难。 此外,现在推荐用 2 的帖子基本都是 2013 年前的了,目前很多人都倾向从 3 开始新项目。 系统: ubuntu 优先推荐的 linux ,最大好处就是拆封即用不折腾,软件源也相对较新。 win 上装需要编译的包会比较蛋疼。 潜力:我不能做一些预言,说 Python 已经被钦定了,这样你们肯定会说不按照基本法,把我批判一番。但是学 Python 很多好处在 web 之外,你能用它做很多事情, Python 的前景还是不错的。这个我只能说见仁见智吧,语言这么多,选一门喜欢的就好。 轮子:看框架, Django 基本轮子现成,但是大而重,约束甚多,个人不太喜欢。 Flask 也有很多现成的轮子。 Tornado 的话,需要很多轮子,这是我目前总结自用的轮子: https://github.com/fy0/fpage |
15
fy 2015-12-18 15:47:53 +08:00
握草 写完了切到外面一看, LZ 机智的水了 3 贴,都在顶部。。。
|
17
wizgy 2015-12-18 16:41:23 +08:00
我们组有个公司的内部项目,现在日 PV 约 100 万到 150 万,语言和框架用的是最常见的 CPython 和 Django ,操作系统是 CentOS 6 ,异步长连接需求用 Tornado 解决。
公司现在要求所有项目的可用时间不低于 99.94%。在这个项目运行一年多的时间里,用的 APScheduler 出现过莫名其妙停止服务的现象,也出现过几次数据库方面的故障,最后怀疑是 MySQL 驱动本身有 bug 导致的。这些都是重启服务后就恢复正常,日志里看不出毛病,难以复现的问题。 现在我的感受是 Python 的生态圈里的开源软件似乎不是很可靠。在访问量不断增长的大背景下,可能在出现性能瓶颈之前,稳定性方面就要遭受更严重的考验了。对于楼主的问题,我的看法是很在意性能就不要用 Python ,如果决定用 Python 就不要过于在意性能问题, 当然,也可能是我们团队的人能力不行。 |
18
liujiangbei 2015-12-18 18:07:32 +08:00
作为拿 PHP , python , golang ,以及 nodejs 写过线上产品的人谈谈心得,
1 )选什么首先需要考虑你的团队,以及未来各类人才的招募便捷性。 2 )从未来可能出现的访问量和能投入的资源做一个简单的预估吧,虽不一定准确,但是要有。 有了这两步之后,单纯的从语言角度来说说,如果你希望更好的性能,毫无疑问, golang 最能满足你的需求, nodejs 个人建议暂时别用在新项目上,不是很好驾驭。再说说 PHP ,毫无疑问“世界上最好的语言”,性能应该相对这几类,比较差,如果是 PHP7 的话以及配合 yaf 的话可能会好点,但是 PHP 确实对于研发人员来讲随意,随性,写起来爽爽的,同时由于门槛相对低,研发水准良莠不齐,如果没有一个好的机制保障,代码可能会很烂,更严重的事你需要更多的机器来堆性能,另外一点,市面上 PHP 人才还是比较多,方便招募。 python 的话,个人认为相对 PHP 严谨很多,性能的话应该比 PHP 强不少(前提是大家都别写得太傻逼),但是研发人员貌似比 PHP 少很多,造轮子倒不至于,建议 py2 。 欢迎补充。 |
19
liujiangbei 2015-12-18 18:11:52 +08:00
建议使用 golang ,语言简洁,优雅,性能强劲,能写 server 端开发,性能虽不及 C++, C ,但比 java , python 还是绰绰有余,(还是那个前提,不要写得太傻逼),能做 web 开发,能写 restful 接口,还是蛮不错的。如果楼主和团队已经储备了 golang 人才,或者能快速进入开发的人才。
|
20
neoblackcap 2015-12-18 18:47:00 +08:00
@liujiangbei http://benchmarksgame.alioth.debian.org/u64q/which-programs-are-fastest.html
golang 比 Java 快很多不见得,而且若是初创,选 Java 肯定比 golang 好。毕竟 Java 换谁上都一样,人还容易招。 golang ,既没培训的,学校也不招,完全靠自学。刚开始的那几个人一走,项目完全停摆。 若是自己能写的话就另说,那么用什么都可以,只要能解决遇到的一切坑。不行的话就老实选工程化好的语言, C#跟 Java 都是很不错的选择。 |
21
wuxqing 2015-12-18 19:12:01 +08:00
对于 web 项目,绝大多数团队的那点流量,语言性能一般不会是瓶颈
换一门新语言,肯定会有坑的,填坑的过程就是涨经验的过程 python 的好处就是涉及的领域很广,不像 php 主要是在 web 领域 |
22
clino 2015-12-18 20:09:41 +08:00 via Android
|
23
spark 2015-12-18 20:20:58 +08:00
直接切 Rails
|
24
laucie 2015-12-18 20:30:46 +08:00
又学会了几个单词
|
25
dai269619118 2015-12-18 20:39:28 +08:00
不管是 python 还是 php 性能都不是你首先要考虑的问题。
因为你工作前 3 年基本不需要解决这方面的问题。 刚开始学习的时候 python 遇到的坑 要比 php 多很多... php 和 python 都是很值得学习的 2 门语言 建议你先学 php |
26
patrickstar 2015-12-18 20:45:28 +08:00
对于一个一直用 C/C++做分布式控制软件的人,正在边学习边使用 Python 做数据处理和可视化工作,也期望能用 python 尝试一下子 web ,还没搞明白咋个搞,看完这个帖子也一头雾水
|
27
ipconfiger 2015-12-18 21:10:12 +08:00
难道说 PHP 是世界上最好的语言这个笑话说多了都不知道梗在哪里了么?
|
28
SharkIng 2015-12-18 21:13:14 +08:00
看了楼主两个帖子,如果楼主真的那么在乎性能的话, Nodejs 难道不是更好的选择?
而且不管你是什么语言,依然都可以做到非常不错 PS :记忆中 Facebook 的第一个版本是用 PHP 开发的,而且现在也依然有很多 PHP 的内容。 |
29
hbkdsm 2015-12-18 21:18:50 +08:00
知乎上曾有一个回答,很认同,转过来:
如果想尽快找个活干,学 PHP 如果想成为高效的工程师,学 Python 如果想爱上编程,学 Ruby |
36
forgett 2015-12-19 19:11:57 +08:00
简洁也是一种美吧。
|
39
13k 2015-12-21 23:06:58 +08:00
@233 私以为 douban 等 python 站很多年了但是功能简陋没有 wp 丰富的事并不是因为 python 在 web 端开发有很多坑或者要重复造轮子或者会更加消耗生命时间和精力等造成的,而更多是产品、运营等因素咯
|