分散アーキテクチャをPythonから.NetCoreに移行しています。このアーキテクチャには、要求をサービスバス(KAFKA)にプッシュするゲートウェイAPIがあります。要求はマイクロサービスによって処理されます。これらのマイクロサービスは、要求オブジェクトに設定されているトピックについて、ゲートウェイ(クライアント)に応答します。 トピック名は、pythonアプリケーション(Flask/uwsgi)のprocess_idに基づいてビルドされています。Messaging System(kafka/.NET)によるリクエスト/レスポンス戦略
しかし、.NetCore Webapiアプリケーションでは、そのプロセスからトピックを取得する方法が見つかりませんでした(私は.NetCoreで始まります)。マイクロサービスの回答を待っている間にAsyncメソッドを使用してエントリポイントを解放すると、Assembly IDの種類に基づいてトピック名を生成するのが最適です。しかし、すべてのAsycメソッド呼び出しは、異なるトピックを生成するでしょう、そうですか?それは話題の数が多い...奇妙な種類...
他の方法はありますか?
私はMemoryCacheを使用してMicroservicesとゲートウェイプロセスからの回答を通信することを考えています。 (要求にはメモリキャッシュアクセスのキーとして使用されるGuidが含まれています)。どう思いますか?
なぜ、プロセスIDを使用し続けるのはなぜですか? '' 'p' 'System.Diagnostics.Process.GetCurrentProcess();' '' '' 'p.Id.ToString();' '' – Martin
'タスク'と非同期の処理方法がわかりません.NETの関数です。 PythonとプロセスIDへの関心は、かつては始まったプロセスIDが決して変わらないということでした。その場合、1つのプロセスで常に1つのトピックしか管理できません。 .NETでは、潜在的な '' FetchClientResponseAsync()を呼び出すことは新しいプロセスを生成し、新しいトピックにつながると思います。複数のアクセスは多くのトピックにつながります。私はそれほど心配していません。(可読性は、ほんのわずかなメッセージに限られています...) – fredczj