2011-08-07 5 views
0

Mes amis et moi allons développer une application web. Le langage de script le plus courant en moyenne pour nous est le Python, donc nous aimerions l'utiliser pour le développement. Cependant, nous sommes confus avec le choix d'un ensemble d'outils approprié pour notre tâche. Nous nous attendons à une charge très élevée, nous aimerions donc le garder à l'esprit au début. Nous avons trouvé que Tornado est un bon serveur web non bloquant asynchrone, et probablement nous aurions besoin de choses qui fonctionnent via wsgi (ie Beaker pour les sessions), mais Tornado n'est pas si asynchrone quand on travaille dans le serveur wsgi mode. Nous avons également trouvé que wsgi n'est pas conçu pour fonctionner de manière asynchrone et que Tornado est également nécessaire pour certaines bibliothèques utiles comme asyncmongo, donc nous devons probablement sacrifier quelque chose ici, mais le choix est difficile.Développement Web pour une charge élevée en Python

Et nous ne voulons pas utiliser Django car nous n'apprécions pas les solutions tout-en-un.

La question est - quelle est la manière courante de construire des applications fonctionnelles complètes à haute charge avec Python? Quelles bibliothèques/cadres concrets devraient être utilisés ici?

Répondre

4

On dirait que vous faites premature optimization. La bonne solution pour gérer une charge élevée dépend fortement du type de charge. Pouvez-vous être sûr que les sujets dont vous parlez seront vraiment vos goulots d'étranglement? Je choisirais un ensemble d'outils connu pour être rapide et qui vous permettra de rester flexible dans le futur. nginx, wsgi et flask/werkzeug pourraient être un bon point de départ. Ou jetez un oeil à la substance tordue. Puis commencez à construire votre application, mesurez, optimisez et adaptez.

Questions connexes