デスクトップ アプリ、モバイル アプリ、Web フロントエンドの 3 種類のクライアントと対話するサーバー アプリケーションを作成する必要があります。同時接続の最大数は 2 または 3,000 です。おおよその交換フォーマット:
デスクトップ アプリ (Python + PyQt で記述)
a) クライアント: データ要求 サーバー: データ応答
b) サーバー: 通知 クライアント: 確認
モバイルアプリ (Android):
a) クライアント: データ送信 サーバー: 確認
b) サーバー: 通知 クライアント: 確認
Web フロントエンド:
a) クライアント: データ要求 サーバー: データ応答
データは SQL からの選択であり、注文情報、顧客情報、GPS データなどが含まれています。データのシリアル化に json を使用する予定ですが、どの基本プロトコルと拡張機能を選択すればよいかよくわかりません。フロントエンドの場合、Tornado を使用して RESTfull API を実装したいと考えています。他のタイプのクライアントにも使用できることはわかっていますが、Tornado を使用してサーバーからクライアントへのメッセージングを実装することは良い考えですか? おそらく、これを ZeroMQ (または別のメッセージング システム) で実装するか、生の TCP ソケットを使用する方がよいでしょうか? では、トルネードの代わりにチューリップを使用する必要がありますか?