开发者

Web-development for high-load in Python [closed]

开发者 https://www.devze.com 2023-03-26 16:20 出处:网络
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references,or expertise, but this question will likely solicit debate, a
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that thi开发者_开发问答s question can be improved and possibly reopened, visit the help center for guidance. Closed 11 years ago.

My friends and I are going to develop some web application. The most common scripting language in average for us is the Python, so we would like to use it for the development. However, we are confused with choosing a proper tool set for our task. We expect very high load, so we would like to keep it in mind at the beginning.

We'd found that Tornado is a nice asynchronous non-blocking web-server, and probably we would need some stuff that works through wsgi (i.e. Beaker for sessions), but Tornado is not so asynchronous when working in wsgi server mode. Also we found that wsgi is not designed to work asynchronously at all and in the same time Tornado is perquisite for some useful libraries such as asyncmongo, so probably we need to sacrifice something here, but the choice is hard.

And we don't want to use Django because we don't appreciate all-in-one solutions.

The question is - what is the common way to build full functional high-load applications with Python? What concrete libraries/frameworks are should be used here?


Sounds like you are doing premature optimization. The right solution for handling high load depends heavily on the kind of load. Can you be sure that the topics you talk about will really be your bottlenecks? I would choose a toolset which is known to be reasonalbe fast and which will keep you flexible in the future. nginx, wsgi and flask/werkzeug might be a good starting point. Or have a look at the twisted stuff. Then start to build your application, meassure, optimize and adapt.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号