1
yetone 2012-11-30 17:57:06 +08:00
不错,谢谢分享
|
2
feilaoda 2012-11-30 18:13:57 +08:00
写的很详细。赞。
|
3
tedd 2012-11-30 18:20:21 +08:00
lz能写写你的学习之路吗
|
4
lewisc402 2012-11-30 18:20:27 +08:00
收藏了,慢慢看。。。
|
5
viperasi 2012-11-30 18:26:00 +08:00
不错,感谢分享,正在学习flask,能谈下flask与web.py的之间的优劣吗?多谢
|
6
liuxurong 2012-11-30 19:38:54 +08:00
不错,可以做个一键包吗?
|
7
cloudbeyond 2012-11-30 21:01:22 +08:00
写的很详细,很需要这样的文章,已感谢楼主
|
8
linuxer 2012-11-30 21:26:53 +08:00
嗯,不错。
|
10
hepochen OP @viperasi web.py也在一个非常小的项目中使用过,并没有深入了解过,不好评价。我自己本身对技术有守旧的态势,django原来用得就很顺了,等真正去了解flask的时候,真的觉得它漂亮的很,就直接扔了django。毕竟,pocoo出品的,品质有保证的。
但话说回来,作为micro frame的,差异也不会太大。关键的问题在于自己想做什么了,因为,到最后,不论web.py还是flask,肯定会整出不少自己的utils来…… |
11
ipconfiger 2012-11-30 22:02:07 +08:00
gunicorn实现更新代码的时候不停服务是如何搞的?
ps aux | grep gunicorn | grep master 然后kill -HUP pid ? |
12
xiaojay 2012-11-30 22:50:40 +08:00
感谢分享,能透露下是什么产品么? :)
|
13
hepochen OP |
15
hepochen OP @ipconfiger gunicorn本身就是支持这种机制的。它会分几个进程去承接request,当你重启的时候,那些进程其实还活着,然后就不会停机。进程接受了一定数量的request后,会自动被杀掉。
另外,重启的时候,也可以要求一个timeout的时间,默认是30秒,把所有旧进程都杀掉。 一般不是太老的web server都能实现这种机制的,倒不是gunicorn独有的。 |
17
zeeler 2012-12-03 11:29:18 +08:00
为啥要选mongodb,基于什么考虑的?另外,我更喜欢tornado做app server,不知道你们比较过性能没有。
|
18
anew 2012-12-03 13:16:47 +08:00
@hepochen 看了过后收益还是很多的,结合我自己的经历,感觉要根据自己的需要来选择适合的框架。
flask是一个不错的框架,清晰,优美。但我自己么有用过,还没有什么发言权。我自己还是选择了django来开发,理由很简单,开发速度快。我自己用ORM过的很好,只要数据库设计的时候,少用关联,多做缓存,性能上没有什么问题。数据库我也还是用mysql,理由很简单,稳定,方便。 mongodb很好,速度是mysql的好几倍,但我用不上,因为我现在mysql还不是性能瓶颈。我写的应用,一天pv只有几百万,服务器也很烂,只有2G的内存。但还是跑的很欢乐。前端用nginx做了反向代理,性能还不错。 而且还是用 fastcgi 做的,也没有用 gunicorn,主要是感觉 gunicorn 没有fastgi稳定,所以在 fastcgi 不是性能瓶颈以前,还是不准备换其他的。 我现在写应用,主要还是考虑开发速度,“人生苦短,咱就不浪费那个时间了”,接下来考虑的就是稳定性,比较半夜服务器来个崩溃什么的,还是很然你沮丧的。但如果服务器过载了,我还是很欢乐的,毕竟有人用还是好的嘛。服务器过载也容易解决,加台服务器就可以解决了。 NOSQL我是不怎么建议用的,理由很简单,开发时间长。其实NOSQL就是用编程复杂度来换效率。低于500万的应用,mysql还是可以的。NOSQL没有说起来的那么美。一般开发的站点,也就是几万,几十万的PV,所以大可不必在NOSQL上浪费生命。当有需要了再换,也正好。 以上只是我个人的一些体会 |
19
jser 2012-12-03 13:54:40 +08:00
|