Pythonで相互に通信する2つのアプリケーションを作成したいと思います。これらのアプリケーションの1つはサーバーのように動作し、もう1つはクライアントのGUIである必要があります。それらは、同じシステム(同じマシン上)またはリモートで異なるデバイス上で実行できます。
サーバー(または)やZeroMQRabbitMQ
のようなAMQPメッセージング(のような)とそれにアプリケーションを接続するために、どのテクノロジーを使用すべきかをお聞きしたいと思います。将来的には何らかの認証などをしたいと思っています。Twisted
Tornado
私は本当にたくさんの質問や記事を読みました(このようなもの:なぜrabbitmqを使用する必要があるのですか)、そして多くの人々が「rabbitmqとtwistedは違う」と言っています。私は彼らがそうであることを知っています。この場合、違いと、これらのソリューションの1つが他のソリューションよりも優れている理由を知りたいと思います。
編集: 次の要件で使用したい:
- 一度に複数のユーザーが接続されます-同じプログラムに接続されているユーザーは1〜10人で、共同作業を行うと思います
- 送信されるデータは、ユーザーが何をしたかを伝える「メッセージ」です。リモート呼び出しのようなものです(ただし、GUIはさまざまな言語で記述できるため、メッセージはjson情報のようなものになるため、これに焦点を当てないでください)。
- システムは共同作業を可能にする必要があります-したがって、可能な限りインタラクティブである必要があります。(データは、ユーザーが何かを入力したり、何らかのアクションを実行したりすると、常に送信されます)。
さらに、この特定の場合だけでなく、なぜ一方のソリューションが他方よりも優れているのかを聞きたいと思います。