السبت، 14 ديسمبر 2019

تسجيل الخدمة مع سيرفر يوريكاService Registration with Eureka

تسجيل الخدمة مع سيرفر  يوريكا

Service Registration with Eureka

تسجيل الخدمة مع سيرفر  يوريكاService Registration with Eurek

في هذا الفصل ، سوف تتعلم بالتفصيل حول كيفية تسجيل تطبيق خدمة Spring Boot Micro في خادم Eureka.  قبل تسجيل التطبيق ، يرجى التأكد من تشغيل خادم Eureka على المنفذ 8761 أو أولاً إنشاء خادم Eureka وتشغيله.  لمزيد من المعلومات حول إنشاء خادم Eureka ، يمكنك الرجوع إلى الفصل السابق.

 أولاً ، تحتاج إلى إضافة التبعيات التالية في ملف تكوين البناء الخاص بنا لتسجيل الخدمة المجهرية مع خادم Eureka.

 يمكن لمستخدمي Maven إضافة التبعيات التالية إلى ملف pom.xml -




   org.springframework.cloud
spring-cloud-starter-eureka
يمكن لمستخدمي Gradle إضافة التبعيات التالية إلى ملف build.gradle -

compile('org.springframework.cloud:spring-cloud-starter-eureka')

الآن ، نحتاج إلى إضافة تعليق توضيحيEnableEurekaClient في ملف فئة تطبيق Spring Boot الرئيسي.  يجعل التعليق التوضيحيEnableEurekaClient من تطبيق Spring Boot بمثابة عميل Eureka.

 تطبيق Spring Boot الرئيسي كما هو موضح أدناه -
package com.ahmedalmahallaei.eurekaclient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

@SpringBootApplication
@EnableEurekaClient
public class EurekaclientApplication {
   public static void main(String[] args) {
      SpringApplication.run(EurekaclientApplication.class, args);
   }
}

لتسجيل تطبيق Spring Boot في خادم Eureka ، نحتاج إلى إضافة التكوين التالي في ملف application.properties أو ملف application.yml وتحديد عنوان URL لخادم Eureka في تكويننا.

 رمز ملف application.yml موضح أدناه -
eureka:
   client:
      serviceUrl:
         defaultZone: http://localhost:8761/eureka
      instance:
      preferIpAddress: true
spring:
   application:
      name: eurekaclient
يتم كتابة  كود  ملف application.properties أدناه -
eureka.client.serviceUrl.defaultZone  = http://localhost:8761/eureka
eureka.client.instance.preferIpAddress = true
spring.application.name = eurekaclient
الآن ، أضف Rest Endpoint لإرجاع String في تطبيق Spring Boot الرئيسي واعتماد Spring Spring Starter على الويب في ملف تكوين البنية.  لاحظ الكود الوارد أدناه -

package com.ahmedalmahallawi.eurekaclient;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@EnableEurekaClient
@RestController
public class EurekaclientApplication {
   public static void main(String[] args) {
      SpringApplication.run(EurekaclientApplication.class, args);
   }
   @RequestMapping(value = "/")
   public String home() {
      return "Eureka Client application";
   }
}
.والتالي ملف التكوين بأكمله أدناه
For Maven user - pom.xml
xml version = "1.0" encoding = "UTF-8"?>
 xmlns = "http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   
   4.0.0
com.ahmedalmahallawi eurekaclient 0.0.1-SNAPSHOT jar eurekaclient Demo project for Spring Boot org.springframework.boot spring-boot-starter-parent 1.5.9.RELEASE UTF-8 UTF-8 1.8 Edgware.RELEASE org.springframework.cloud spring-cloud-starter-eureka org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.springframework.cloud spring-cloud-dependencies ${spring-cloud.version} pom import org.springframework.boot spring-boot-maven-plugin
For Gradle user – build.gradle
buildscript {
   ext {
      springBootVersion = '1.5.9.RELEASE'
   }
   repositories {
      mavenCentral()
   }
   dependencies {
      classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
   }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

group = 'com.tutorialspoint'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
   mavenCentral()
}
ext {
   springCloudVersion = 'Edgware.RELEASE'
}
dependencies {
   compile('org.springframework.cloud:spring-cloud-starter-eureka')
   testCompile('org.springframework.boot:spring-boot-starter-test')
   compile('org.springframework.boot:spring-boot-starter-web')   
}
dependencyManagement {
   imports {
      mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
   }
}

يمكنك إنشاء ملف JAR قابل للتنفيذ ، وتشغيل تطبيق Spring Boot باستخدام أوامر Maven أو Gradle التالية -
 بالنسبة إلى Maven ، يمكنك استخدام الأمر التالي -
mvn clean install
بعد "BUILD SUCCESS" ، يمكنك العثور على ملف JAR ضمن الدليل الهدف.
 بالنسبة إلى Gradle ، يمكنك استخدام الأمر التالي -
gradle clean build
بعد "BUILD SUCCESSFUL" ، يمكنك العثور على ملف JAR ضمن دليل build / libs.
 الآن ، قم بتشغيل ملف JAR باستخدام الأمر كما هو موضح -

java –jar  
الآن ، بدأ التطبيق على منفذ Tomcat 8080 وتم تسجيل تطبيق عميل يوريكا مع خادم يوريكا كما هو موضح أدناه -

Started Application on Tomcat Port
اضغط على عنوان URL http: // localhost: 8761 / في متصفح الويب الخاص بك ويمكنك أن ترى تطبيق عميل Eureka مسجلاً في خادم Eureka.
Eureka Client Application
الآن ، اضغط على عنوان URL http: // localhost: 8080 / في متصفح الويب الخاص بك وشاهد إخراج Rest Endpoint.
Eureka Client Application Output






التسميات: