2

以下は、スプリング ブート アプリケーションの application.properties です。

spring.application.name=test-service
server.port=8080

management.port=8081
management.context-path=/admin

spring.cloud.config.uri=http://localhost:8888
endpoints.refresh.enabled=true
endpoints.restart.enabled=true

アプリケーションを起動すると、config-server に接続し、期待どおりにプロパティをロードします。

構成サーバーのプロパティを変更し、次を使用してアプリケーションの更新をトリガーします

curl -X POST http://localhost:8081/admin/refresh

API は、変更されたプロパティの名前を出力します。

プロパティを取得すると、まだ古い値が表示されます

curl -X GET http://localhost:8081/admin/env/{property_name}

再起動をトリガーすると、新しいプロパティ値が取得されます

curl -X POST http://localhost:8081/admin/restart 

を使用してプロパティ値を変更しようとすると、同じ動作が表示されます

curl -X POST  http://localhost:8081/admin/env -d property1=123

プロパティ値を取得しようとすると、まだ古い値が表示されます

curl -X GET http://localhost:8081/admin/env/property1

management.port を 8080 (server.port と同じ) に変更すると、すべてが期待どおりに機能します。

この動作は予期されたものですか? 8080 で実行されているサーバー用と 8081 で実行されているサーバー用の 2 つの異なる環境を変更しているように見えます。

4

2 に答える 2