私は現在、複数のアプリケーション/スクリプトで構成される複雑なPythonプロジェクトを設計しようとしています。まず、複数のリモートおよび/またはローカルエージェントからデータを受信する中央エンジン(サーバー)。これらのエージェントはいくつかのタスクを処理します。エンジンは常にホスト上のデータベースに接続され、すべてのリモートタスクに関する情報が格納されます。さらに、サーバーやWebアプリケーションのデスクトップクライアントなどの追加ツールをエンジンまたはDBに接続して、インフラストラクチャ全体の現在の状況を表示することもできます。ソケットを使ったPythonサーバーエージェントアプリケーションの設計、あるいはおそらくREST?
まず、私はマルチスレッドソケットを使用することを考えましたが、これはもっと深く発見するつもりです。しかし、私はREST APIのアイデアを見つけました。
私はこれらの主題の両方にかなり新しいので、私は自分のプロジェクトに合った適切な解決策を見つけようとしています。そのような場合にREST APIフレームワークを使用することに対するあなたの意見は? RESTはセキュリティの点で追加のソリューションを提供しています。エンジン、データベース、および前述のツールを操作するには本当に柔軟性があります。ソケットを使用している間は、ネットワークの概念、すなわち最も効率的な方法でソケットを利用する方法を知る必要があります。
REST APIは、FlaskやDjangoのようなWeb開発フレームワークで主に提供されているようです。 Webアプリケーションの開発中にのみ使用することをお勧めしますか? 私のAPIがアプリケーション自体にしか利用できない場合、私はプロジェクトとエンジンとエージェントの間でJSriでデータを双方向に送信するためのメインインターフェイスとしてこのAPIを使用しますか? POST要求をエージェントに送信して特定のアクションを実行することは可能でしょうか?
私はこれを達成するのに役立つ別の解決策を知っていますか? 多分私はここで間違った方向にいるのでしょうか?
私はここpossibilitesのこの洪水で迷子にしたくないと私は本当に、あなたの側からの助けをいただければ幸いです:(
ありがとうございました!
すでにFlask [1]を調べましたか?これは、RESTfulなサーバーのための大部分の定型文を処理する比較的単純なライブラリです。 編集:あなたが本当にそれを見たと書いたセクションをスキップしているに違いありません。私はそれを調べる価値があると思います。私があなたに送るリンクは、私がそれを学ぶのに使ったチュートリアルです。 [1]:https://blog.miguelgrinberg.com/post/designing-a-restful-api-with-python-and-flask – Arne
@ArneRecknagel:はい。私の質問は、そのようなプロジェクトでRESTを使用するのが適切かどうかということに関連しています。 – auun
私は個人的にそうだと思います。 RESTは非常に便利なツールですので、プログラムのエンジニアリングを終えると、あまりにも多くの後悔を感じる必要はありません.RESTの使い方を学びました。 – Arne