質問

私はWeb開発にかなり初めてです。最近、私はDjangoを使用してサイトを作っています。私はサイトにWebSocketを実装することに非常に興味がありました。これを達成するために、私はdjango-socketioを使用していました(git hubで入手可能 https://github.com/stephenmcd/django-socketio)。これはすべて、Django-Socketioドキュメントで提案されているGeventのPywsgiサーバーを使用して正常に動作していました。

Djangoの本を読んでから、展開にはApacheとmod_pythonを使用してDjangoを使用することをお勧めします。現時点では、Django、Apache、WebSocketsを一緒に連れて行くのに最適な方法がわからない。 Pywsgiサーバーを使用して、Apacheに沿って実行されているDjango-Socketioソケットを処理して、プロジェクトの残りの部分にサービスを提供する必要がありますか? Apacheがすべてを処理できる方法はありますか? Django-Socketioを使用してはいけませんか?私はそれらについて少し知っているので、私は本当にDjangoとApacheを使いたいです。これは私が他のことについて知っている以上のものです:D

とにかく私の質問は、誰かがDjango-SocketioとApacheの使用に関する良い記事やドキュメントを知っているなら、私がトピックに頭を巻くことができるのですか?

ありがとうございました。

役に立ちましたか?

解決

そもそも、mod_pythonを提案することを読んだものはすべて非常に古くなっています。開発されなくなり、Apacheを使用する場合、MOD_WSGIは正しいアプローチです。

私が知る限り、MOD_WSGIはWebSocketsが必要とするオープン接続のタイプをサポートしていません。 Googleで簡単に検索すると、Apacheの下でWebSocketを動作させる方法があることがわかりますが、Gevent/Django-Socketioスタックでどれだけうまく機能するかについては、検討する必要があるものです。

WebSocket接続を処理するために、Django-Socketioドキュメントで推奨したように、Geventのサーバーを使用することをお勧めします。ベンチマークは一粒の塩で撮影する必要がありますが、 これらの結果 Geventはmod_wsgiに匹敵することがわかります。

Django-Socketioは、単一のアプリケーションインスタンスを通じて、Websocket接続と定期的なDjangoビューを提供できるようにするという利便性を提供します。それがあなたに合わない場合は、これらを個別のプロジェクトとして実装し、Apache/mod_wsgiの下で通常のDjangoパーツを実行できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top