私は、私のdjangoアプリケーションがリモートコンピュータでTCP/IPソケットを使って通信するようにしたいので、そのソケットをいつでも利用できるようにしたいと思います。ライブラリを使用したいです竜巻。私はビューやモデルなどを書くことだけに精通しているので、私はそれを自分のコードベースにどこに収めるべきかについて完全にはわかりません。Django TCPサーバーと竜巻
私は、竜巻のサーバー(http://tornado.readthedocs.io/en/latest/tcpserver.html参照)を実行する管理コマンドを書くことを考えていましたが、管理コマンドが終了したらどうすれば私のサーバー上で.stop()を呼び出すことができますか?私は、私の管理コマンドを終了するときに終了しないスレッドを生成するか、複数のオープンソケットで終了させることは望ましくありません。
もちろん私はリスナーが私のdjangoプログラムのどこかに常駐し、管理コマンドコード内だけでなく、そこにアクセスできるようにしたいと思います。私はdjangoの設定からクラスをインポートすることを考えていました。
私は正しい方向に考えているのですか、それとも別のより良いアプローチがありますか?
編集:私はこれをしたいと思う理由として:
私はと通信したいマイクロコントローラを持っている、と私はそれにHTTPを解析/実装行きたくないだろう、と私は希望定期的に接続が生きているという表示を送信するのが好きで、HTTPはやり方のようには見えません。
あなたは正確に何をしようとしているかは言及していません。なぜあなたは* ""リモートコンピュータとのTCP/IPソケットを使って通信する必要がありますか? – xyres
@xyresはオリジナルの質問を説明付きで編集しました – Nirri
さて、管理コマンドが存在すると、なぜサーバーを停止したいのですか?永続的なTCP接続を常に開いておきたいのですか?つまり、あなたのコマンドが実行されている間だけTCP接続を開いておきたい場合は、本当にTornadoは必要ありません。管理コマンドファイルで 'socket'ライブラリを使用してTCPソケットを作成するだけです。したがって、管理コマンドが終了すると、ソケットも閉じます。 – xyres