7

私は昨年、Djangoを使用してWebサーバーアプリケーションを開発してきました。スタックはDjango+Apache+MySqlです。このスタックは、私たちのニーズに完全に適合していました。最近、いくつかのリアルタイム機能と、サーバーアプリケーションの多くのものを変更/書き換える機会が必要になりました。驚いたことに、ここではDjangoが最適なオプションではありません。

私はたくさん読んでいます(プッシュ、WebSocket、gunicorn ...たくさんのもの..http://curella.org/blog/django-push-using-server-sent-events-and-websocket/ が、私はDjangoを使いたいのか、それともその仕事により適したソフトウェアの新しいスタックを目的とするのかを決めることができませんでした。Djangoを使用するのは少し不自然に思えます。経験豊富な開発者は私を正しい方向に向けることができますか?

したがって、基本的な質問は、リアルタイムWebアプリケーションを構築するために私が持っている現在のソフトウェアスタックに代わるものは何ですか?

ありがとう

PS:英語を母国語としない人。:)

編集:代替案は安全な接続を可能にする必要があります。

編集2:私たちが開発するWebアプリケーションはゲームです。

4

3 に答える 3

2

あなたはあなたの決定をあなたの目標と比較検討する必要があります。

あなたは製品が欲しい

次に、最も使い慣れた言語フレームワークでコードを記述します。製品があり、制限がある場合にのみ、ツールの切り替えを検討してください。

あなたは何か新しいことを学びたい

新しい言語であるフレームワークを試してみてください。ただし、製品の作成にはかなり時間がかかる場合があり、新しいツールは古いツールよりも優れているとは言えない場合があります。

半々

他のツールを使用して、2つのプロジェクトを開始し、各プロジェクトで同じものを構築してみてください。これにはさらに時間がかかりますが、どのツールが好み/タスクに最も適しているかをすばやく確認できるはずです。

代替案

djangoの意味が「不自然」かどうかはよくわかりません。Djangoはサーバー/クライアント通信を行うことができます-AJAXを使用してdjangoサーバーと通信し、別のpythonicライブラリを呼び出してリクエストを処理するだけです。djangoに代わるPythonには、すばらしいflaskweb.pyがありますが、(djangoのように)プログラムしない限り、どちらもクライアント/サーバー通信を行いません。Pythonに興味がない場合は、RubyonRailsを試してみてくださいクライアント側では、 JavaScriptについて何かを知る必要があるので、それについて学びましょう(coffescriptjQueryはJSの苦痛を和らげることができますが、最初にJavaScriptを学びます)。

もちろん、弾丸をかじって、サーバーベースとしてnode.jsを使用することもできますが、明らかにそれはかなり良いです(私はまだ試していません)-そしてJSで書かれています。

編集:あなたのコメントに照らして、よく見てください

この質問は重複する可能性があることにも注意してください。

于 2013-01-30T09:50:55.640 に答える
2

http://www.tornadoweb.org/ + http://www.mongodb.org/ + https://github.com/bitly/asyncmongo+http://socket.io/を調べてください。これ は良い考えだと思います。それを使用してリアルタイムアプリケーションを作成します。

于 2013-01-30T11:26:10.480 に答える
1

リアルタイムWebアプリケーションの場合は、WebSocketを使用することをお勧めします。これらのアプリケーションは安全であり、接続が確立されたときに通信のオーバーヘッドがなくなるため、応答時間が非常に速くなります。Pythonに習熟している場合は、autobahnを使用して、Pythonでサーバーをツイスト、PythonやJavaScriptでクライアントを作成できます。ここのPSは、ツイストのための本当に素晴らしいチュートリアルです。

于 2013-01-30T10:08:26.547 に答える