【マイクロサービス】eureka取得インスタンスアドレス


最近やっているプロジェクトでは、ルーティングをリフレッシュする必要があります.削除変更ルーティングはすべてredisで操作されているので、eurekaの前のプロジェクトに複数のマシンがあれば、ルーティングをリフレッシュするにはマシンipを遍歴する必要があります.
最初はプロファイルで構成していましたが、その後、この方法が面倒で、いつサーバーを交換したのか、対応する構成も変更する必要があり、変更のリスクがあることに気づきました.後で直接入手できることが判明しました.
次にeurekaのインスタンスを取得する方法を見てみましょう.
import org.springframework.cloud.client.discovery.DiscoveryClient;

@Autowired
 DiscoveryClient discoveryClient;
 /**
  * @param service   ID
  **/   
 public List serviceUrl(String service) {
        List instances = discoveryClient.getInstances(service);
        return instances;
    }

このインタフェースはすべての情報を返し、必要に応じて取得すればいいです.
まとめ:注意すべき点はDiscoveryClientがorgを導入する必要があることである.springframework.cloud.client.discovery.DiscoveryClient、そうでなければエラーを報告します.