私はドッカーに移動したRailsアプリケーションを持っています。このプロセスにより、私はアプリケーションを2つのマイクロサービス:メインアプリとアドレス確認マイクロサービスに分割する必要がありました。私は主なアプリケーションが呼び出す別のRailsアプリケーションにアドレス検証マイクロサービスをカプセル化しました。それはrest-clientを使用し、応答を受信するまでブロックします。マイクロサービスがドッカーで互いに話す方法
リクエストは300msで処理されていました。今、彼らは1.3秒かかる。 newrelicのデータを見た後、大部分の時間は、主なRailsアプリケーションがアドレス検証Railsアプリケーションを呼び出すのに費やされているようです。マイクロサービスがコンテナ間で通信する方法はありますか?私の質問はRuby/Rails特有のものだと思います。私はRabbitMQを調べるべきですか?問題は、フローの早い段階で検証済みのアドレスが必要なため、アドレス検証マイクロサービスRailsアプリケーションへの非同期要求が私に買われるまでにどのくらいの時間がかかるか分かりません。
microservice/dockerに移行する前に、どのように住所確認サービスに電話しましたか?サービスはかなり変わったのですか?同時実行性の問題でない限り、ローカルWebサービスを呼び出すと時間がかかることは奇妙に思えます。 typheousまたはem-http-requestで非ブロッキングリクエストを試行できます – Matt
アドレス確認は内部コールでした。私はこれらのクラスを取り、それらを新しいRailsアプリケーションに移しました。 –