springCloud 微服务框架搭建入门
?Spring cloud 實現服務注冊及發現
? ??服務注冊與發現對于微服務系統來說非常重要。有了服務發現與注冊,你就不需要整天改服務調用的配置文件了,你只需要使用服務的標識符,就可以訪問到服務。
- cloud-eureka-server:eureka注冊服務器
- cloud-simple-service:一個使用mybatis的數據庫應用,服務端
服務注冊管理器原理如下圖所示:
所有的服務端及訪問服務的客戶端都需要連接到注冊管理器(eureka服務器)。服務在啟動時會自動注冊自己到eureka服務器,每一個服務都有一個名字,這個名字會被注冊到eureka服務器。使用服務的一方只需要使用該名字加上方法名就可以調用到服務。
Spring cloud的服務注冊及發現,不僅僅只有eureka,還支持Zookeeper和Consul。默認情況下是eureka,spring 封裝了eureka,使其非常簡單易用,只需要比傳統應用增加一行代碼就可以使用了,這一行代碼就是一個注解。我們按以下步驟實現服務注冊和發現功能。
1)首先我們需要創建一個maven 項目(springcloud)作為主容器
2)接著我們需要建立eureka服務器
? 1.我們的eureka服務器使用idea 的spring Initializr 來創建也可以進入springCloud 的服務地址創建項目https://start.spring.io
? ?1.1?next 下一步
創建成功后項目結構是這樣,eurake-client跟eurakeserver 創建步驟一樣這里就不在操作
在EurekaServer類中我們加入如下代碼:
package com.springcloud;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@SpringBootApplication @EnableEurekaServer public class EurakeserverApplication {public static void main(String[] args) {SpringApplication.run(EurakeserverApplication.class, args);} } 可以看到只需要使用@EnableEurekaServer注解就可以讓應用變為Eureka服務器,這是因為spring boot封裝了Eureka Server,讓你可以嵌入到應用中直接使用。至于真正的EurekaServer是Netflix公司的開源項目,也是可以單獨下載使用的。 在application.yml配置文件中使用如下配置: server:port: 8888eureka:instance:hostname: localhostclient:register-with-eureka: falsefetch-registry: falseservice-url:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ 至此我們一個簡單的EnableEurekaServer注冊服務類就完工了2)接著創建消費者eurake-client上面步驟一致,就不繼續解釋了直接上代碼在Eureka-client類中我們加入如下代碼: package com.springcloud;import org.springframework.beans.factory.annotation.Value; 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 EurakeClientApplication {public static void main(String[] args) {SpringApplication.run(EurakeClientApplication.class, args);}@Value("${server.port}")String port;@RequestMapping("/")public String home(){return "hello world from port " + port;} } 在application.yml配置文件中使用如下配eureka: client: service-url:defaultZone: http://localhost:8888/eureka/ server:port: 9999 spring:application:name: eurake-client 使用maven打下包就OK了 至此一個簡單的服務注冊就完成了總結
以上是生活随笔為你收集整理的springCloud 微服务框架搭建入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电路基础知识 -- 三态
- 下一篇: 电路基础知识 -- 数模信号