0

私は PyAMF を使用して、クライアントのニーズに応じて何百もの異なるイメージの異なるグループを要求するフレックス アプリのバックエンドを作成しています。フレックスコードの開発中に、PyAMF が提供する「simple_server」WSGI サーバーを使用しています。これで、mySQL データベースから画像を取得し、可能な限り高速かつ効率的に多くの同時クライアントに送信できる堅牢なバックエンドを作成する準備が整いました。

PyAMF のドキュメントは、従うべき多くの例を提供しているので素晴らしいですが、作成しようとしているバックエンドの種類について混乱しています。

SocketServer、WSGI サーバー、または Twisted、web2py、Tornado のようなものが必要ですか? これらはすべて異なっていますか?:) 代わりに Apache モジュール (mod_wsgi または modjy または mod_python) を使用する必要がありますか?

これはおそらく多くの公開討論に関係していると思いますので、これらの討論の良い要約を教えていただけないでしょうか?

選択肢が多いのはいいけど、どうやって選べばいいの?

4

1 に答える 1

0

もちろん、短い答えは、プロジェクトの要件に依存するということです。「大量」とは同時接続数はいくつですか? 問題にどれだけのプログラマー時間を投入できますか? 問題にどれだけのハードウェアを投入できますか? ...等...

多数の同時クライアントを計画している場合、Python の世界で Twisted に勝るものはありません。ただし、ブロックを回避するためにデータベースを非同期で処理する必要があり、データベースのやり取りがどれほど複雑かによっては、これが少し面倒な場合があります。基本的には、twisted.enterprise.adbapi を使用するか、独自の twisted-ORM 統合を考え出すことに制限されています。

「簡単な」データベース コードが必要な場合 (つまり、ORM を使用したい場合)、おそらく Apache と mod_wsgi を使用してホストされている (TurboGears/Pylons/plain wsgi) プロジェクトを使用することをお勧めします。これは非常にスケーラブルなソリューションであり、これらのフレームワークを使用して無料で多くのものを入手できますが、必要以上のものになる可能性があります。

本当に高いパフォーマンスが必要な場合は、実稼働環境で多くのプレーンな python wsgi サーバー (wsgiref、paster など) のいずれかを使用することは避けます。

幸運を!

于 2009-09-30T20:26:34.533 に答える