SpringCloud Eureka搭建的方法步驟
1.SpringCloud是什么
以前的服務器就像是一個醫(yī)院只有一個醫(yī)生,什么病人都要讓這個醫(yī)生看,如果醫(yī)生覺得太累,自我暴斃了,那整個醫(yī)院都癱瘓了。而springcloud流行起來之后,就像是醫(yī)院里面有了外科診室,內科診室等,每一個診室都有一群醫(yī)生負責,這樣不管哪一個醫(yī)生不行了都不會影響整個醫(yī)院的運轉。把一臺或好幾臺服務器中的眾多服務,分類出來,解耦合出來,把他們類似的功能交給同一個集群來做,把互相耦合在一起的功能剝離出來,按業(yè)務,按功能來把他們作為一個個微服務放在服務器上,而這個服務器就只提供一個服務,或較少的服務。讓一個超大的服務邏輯,解耦合為一個個小服務,均勻的分布在各自的服務器中。這就是springcloud。
2.Eureka是做什么用的
每一個診室都是一個微服務集群,他們提供的作用都是一樣的。注冊中心Eureka相當于每個診室的成員表。
3.Eureka的搭建
在Idea中創(chuàng)建工程:File -> New ->Project -> Empty Project -> Next

點擊下一步就完事了
創(chuàng)建Module文件

選擇quickstart,點擊下一步(這個頁面可能要加載一會時間)

組名和文件名自己隨便編寫,寫完一直下一步

配置pom文件
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
</parent>
<!--server依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<!--指定下載源和使用springcloud的版本-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Edgware.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
然后就開始導包。。。漫長的等待
在main下創(chuàng)建文件夾resources并設置為資源文件夾

在resources下新建file,并命名為appliaction.yml

配置appliaction.yml
server:
port: 8700 # 端口號自己隨意
# 指定當前eureka客戶端的注冊地址,也就是eureka服務的提供方,當前配置的服務的注冊服務方
eureka:
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka
register-with-eureka: false #自身 不在向eureka注冊
fetch-registry: false #啟動時禁用client的注冊
instance:
hostname: localhost
#指定應用名稱
spring:
application:
name: eureka-server
在buting文件夾下新建文件EurekaServerAppliaction.java,然后寫入以下代碼。
@SpringBootApplication
@EnableEurekaServer //當前使用eureka的server
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class,args);
System.out.println("2333");
}
}
右鍵點擊Debug運行,運行成功后輸入http://localhost:8700如果能出現(xiàn)下面這個界面我們第一步就算成功啦。

接下來就該配置客戶端啦,它提供的是角色的配置,提供服務在服務注冊方(就是我們剛剛配置的server)進行注冊
跟上面的步驟一樣,我們新建Module文件,需要注意的是上面的兩個選為

創(chuàng)建完文件后,我們來配置pom文件,引入以下依賴
<!--引入springboot-parent父項目-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
</parent>
<!--引入springcloud的euekea server依賴-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!--指定下載源和使用springcloud的版本-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Edgware.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
好吧,其實就是把dependency里的server改為client
接著我們創(chuàng)建resources文件夾,創(chuàng)建application.yml文件,里面這樣配置
server:
port: 8701 # 服務提供方
# 指定當前eureka客戶端的注冊地址,
eureka:
client:
service-url:
defaultZone: http://${eureka.instance.hostname}:8700/eureka
instance:
hostname: localhost
#當前服務名稱
spring:
application:
name: eureka-service
pom.xml:
因為搭建的是服務提供者,這里還需編寫服務類controller
@RestController
@RequestMapping("/Hello")
public class Controller {
@RequestMapping("/World")
public String helloWorld(String s){
System.out.println("傳入的值為:"+s);
return "傳入的值為:"+s;
}
}
入口類 并運行此微服務
@SpringBootApplication
@EnableDiscoveryClient//代表自己是一個服務提供方
public class EurekaServiceApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServiceApplication.class,args);
}
}
右鍵點擊Debug(當然開啟此服務時需要先開啟server服務 就是我們第一個編寫的微服務)等待運行成功后,在進入server頁面(進入的是我們第一次配置的頁面,不是這個)

在頁面中我們可以看到,此時可以看見服務提供者已被注冊進 服務注冊者
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
半小時實現(xiàn)Java手擼網絡爬蟲框架(附完整源碼)
最近在做一個搜索相關的項目,需要爬取網絡上的一些鏈接存儲到索引庫中,自己寫了一個簡單的網絡爬蟲,感興趣的可以了解一下2021-06-06
SpringCloud使用集中配置組件Config規(guī)避信息泄露
項目應用中,數(shù)據(jù)庫連接信息、Access-key、Secret-key等由于其及其敏感和特殊性,一旦泄露出去就很可能會使得應用遭到黑客攻擊,例如數(shù)據(jù)庫賬號密碼泄露可能導致“拖庫”,甚至數(shù)據(jù)丟失。此等事件偶有發(fā)生,那么,在分布式微服務項目中,怎么避免這種情況呢2022-07-07
IDEA java出現(xiàn)無效的源發(fā)行版14解決方案
這篇文章主要介紹了IDEA java出現(xiàn)無效的源發(fā)行版14解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-11-11

