Giriş
Şu satırı dahil ederiz
Şu satırı dahil ederiz
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
Maven
Şu satırı dahil ederiz
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency>
Bazı eski kodlarda şu satırı dahil ediliyor, ancak bu "...starter-eureka" yerine "...starter-netflix-eureka-client" yazmak lazım.
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka</artifactId></dependency>
Örnek
Açıklaması şöyle
Then we need to annotate a @Configuration with either @EnableDiscoveryClient or @EnableEurekaClient – note that this annotation is optional if we have the spring-cloud-starter-netflix-eureka-client dependency on the classpath.
Şöyle yaparız. Böylece EurekaClient arayüzü veya ondan kalıtan DiscoveryClient bean kullanılabilir.
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;@EnableDiscoveryClient@SpringBootApplicationpublic class SpringEurekaClientApplication {public static void main(String[] args) {SpringApplication.run(SpringEurekaClientApplication.class, args);}}
Örnek
Ayrıca eğer Rest Service aslında API Gateway ise şu anotasyon da gerekir
- @EnableZuulProxy
Şöyle yaparız. Bu microservice çalışınca Eureka Dashboard'da "Instances Currently Registered With Eureka" başlığı altında "superdev-crm-customer" ismi görülebilir
eureka.client.serviceUrl.defaultZone=${EUREKA_SERVER:http://localhost:8761/eureka}spring.application.name=superdev-crm-customer
Örnek
Şöyle yaparız.
spring:application:name: discovery-clientserver:port: 8385eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/
Eğer bu uygulamada "books" isimli bir rest noktası varsa onu görmek için Eureka sunucusuna şöyle yaparız
"discovery-client/books?bridgeEndpoint=true"
Örnek
Şöyle yaparız. Burada farklı profile isimlerine göre farklı şeyler yapılıyor.
spring:application:name: ABC-SERVICE # ==> This is Service-Id---# Items that apply to ALL profiles:eureka:instance:appname: ABC-SERVICE # ==> This is a instance of ABC-SERVICEclient:fetchRegistry: trueserviceUrl:defaultZone: http://my-eureka-server-us.com:9001/eurekaserver:port: 8000---spring:profiles: abc-service-replica01eureka:instance:appname: ABC-SERVICE # ==> This is a instance of ABC-SERVICEclient:fetchRegistry: trueserviceUrl:defaultZone: http://my-eureka-server-us.com:9001/eurekaserver:port: 8001
Örnek
Şöyle yaparız
# Set Eureka server url here, and specify Eureka instance ID generation patterneureka.client.serviceUrl.defaultZone=http://localhost:9001/eurekaeureka.instance.instance-id=
${spring.application.name}:${spring.application.instance_id:${random.value}}
Hiç yorum yok:
Yorum Gönder