1. 程式人生 > >springcloud實戰篇一之Eureka-server建立

springcloud實戰篇一之Eureka-server建立

以下是springcloud的官方介紹翻譯

Spring Cloud為開發人員提供了快速構建分散式系統中的一些通用模式(例如配置管理,服務發現,斷路器,智慧路由,微代理,控制匯流排,一次性令牌,全域性鎖,領導選舉,分散式 會話,群集狀態)。 分散式系統的協調導致了鍋爐板模式,並且使用Spring Cloud開發人員可以快速地站起來實現這些模式的服務和應用程式。 它們可以在任何分散式環境中正常工作,包括開發人員自己的膝上型電腦,裸機資料中心和受管平臺,如Cloud Foundry

簡單介紹一下Eureka

這是從springcloud的中文網擷取的,可以看出,Eureka只是springcloud整合的一個子專案,由

Netflix提供.這是開放的原始碼https://github.com/Netflix/eureka


Eureka是傳統的CS架構,在springcloud裡面的提供的是服務註冊的作用,是其預設的註冊中心,如下圖所示



1、註冊中心:


Eureka和zookeeper都是可以被用作註冊中心,spring cloud預設使用eureka server,而dubbo預設使用的是zookeeper。eureka的註冊資訊是儲存在一個雙層的Map物件中的,換句話說在記憶體中,不象zookeeper是長久儲存在節點中。另外Eureka遵循的是AP原則,也就是可用性和分割槽容錯性,而zookeeper保證的是CP,確保強一致性


2、服務提供方:


spring-web(Spring MVC)提供了完善的http rest服務框架,用這一套就能提供rest服務。(目前spring cloud官方提供的示例基本上都是http rest服務,理論上講,應該也可以擴充套件成rpc服務,而dubbo是以rpc為主的,這點有些區別)


3、服務消費方:


依賴於spring-web,負載均衡採用ribbon元件來完成,大致原理是從註冊中心發現可用服務的資訊,快取在本地,然後按一定的負載均衡演算法進行呼叫。(跟dubbo類似,只不過dubbo是自己實現的負載均衡)

下面給大家演示如何快速搭建一個Eureka-Server端

工程目錄結構


1.EurekaServer1001服務啟動類

package com.yxf.springcloud;

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

import com.yxf.springcloud.EurekaServer1001;

/**
 * EurekaServer伺服器端啟動類,接受其它微服務註冊進來
 * 
 * @author yangxf  
 */
@SpringBootApplication 
@EnableEurekaServer    //表明這個eureka的服務端
public class EurekaServer1001
{
	public static void main(String[] args)
	{
		SpringApplication.run(EurekaServer1001.class, args);
	}
}

2.application.yml檔案

server: 
  port: 1001
 
eureka: 
  instance:
    hostname: localhost #eureka服務端的例項名稱
  client: 
    register-with-eureka: false     #false表示不向註冊中心註冊自己。
    fetch-registry: false     #false表示自己端就是註冊中心,我的職責就是維護服務例項,並不需要去檢索服務
    service-url: 
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/   

3.pom.xml檔案

<project 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">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.yxf.springcloud</groupId>
    <artifactId>mymicroservicecloud</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>mymicroservicecloud-config-eureka-client-1001</artifactId>
  
  	<dependencies>
		<!-- SpringCloudConfig配置 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka-server</artifactId>
		</dependency>
		<!-- 熱部署外掛 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>springloaded</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
		</dependency>
	</dependencies>
</project>

最後訪問結果 localhost:1001


相關推薦

springcloud實戰Eureka-server建立

以下是springcloud的官方介紹翻譯Spring Cloud為開發人員提供了快速構建分散式系統中的一些通用模式(例如配置管理,服務發現,斷路器,智慧路由,微代理,控制匯流排,一次性令牌,全域性鎖,領導選舉,分散式 會話,群集狀態)。 分散式系統的協調導致了鍋爐板模式,並

springcloud實戰Eureka-client(服務提供者)叢集建立

下面搭建一個Eureka-client的服務提供者叢集1.三個工程的pom.xml依賴是一樣的,所以就僅貼出一個<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org

springcloud理論zookeeper和Eureka對比

寫在前面    在對比zookeeper和Eureka之前,首先來了解一個原則,那就是CAP原則,這是啥??????分散式領域CAP理論,Consistency(一致性), 資料一致更新,所有資料變動都是同步的Availability(可用性), 好的響應效能Partitio

SpringCloud五大神獸Eureka(eurekaServer叢集)

基本概念和方案     Eureka是基於REST(Representational State Transfer,代表性狀態傳輸)的服務,主要用於AWS雲中定位服務,以實現中間層伺服器的負載平衡和故障轉移。我們稱這個服務為Eureka伺服器。Eureka還帶有一個基於Ja

SpringCloud實戰微服務——服務發現與服務註冊(二)-Eureka的簡單使用

服務發現元件Eureka簡介服務發現元件可以使用ZK ,也可以使用Consul,之所以Eureka使用最多有如下的原因導致:① Eureka來自生產環境。② Spring  Cloud對Eureka的支援很好。Eureka簡介:Eureka是Netflix開發的服務發現元件,

SpringCloud微服務實戰Eureka註冊中心服務端

pub man vat mil desc del des cee reg 1.項目啟動類application.java類名上增加@EnableEurekaServer註解,聲明是註冊中心 1 import org.springframework.boot.Spring

Drool實戰系列()入門程序

sta pil 入門 turn ali The demo print xmlns Drools官網地址為:https://www.drools.org/ maven環境 入門程序例子如下: 項目結構截圖: 一、導入pom文件 <project xml

shiro實戰系列()入門實戰

命令 pattern 角色 一個 保持數據 步驟 會話管理 test 證明 一、什麽是shiro? Apache Shiro 是一個強大而靈活的開源安全框架,它幹凈利落地處理身份認證,授權,企業會話管理和加密。 Apache Shiro 的首要目標是易於使用和理解。安全

JAVA常用集合框架用法詳解基礎Colletion介面

首先,在學習集合之前我們能夠使用的可以儲存多個元素的容器就是陣列。 下面舉幾個例子主要是引出集合類的: 1、8,4,5,6,7,55,7,8  像這樣的型別相同的可以使用陣列來儲存,本例可以用int[] arr來儲存。 2、”zhnagsan”,true,68 像這樣的可以使

Spring Cloud學習筆記Eureka Server註冊中心

Eureka Server提供服務註冊服務,各個節點啟動後,會在Eureka Server中進行註冊,這樣EurekaServer中的服務登錄檔中將會儲存所有可用服務節點的資訊,服務節點的資訊可以在介面中直觀的看到。我們簡單實現一下Eureka Server。 1.新建一個Maven專案

程式碼審計系列程式碼審計學習思路

學習程式碼審計要熟悉三種技術,分四部分走一:程式語言  1:前端語言 html/javascript/dom元素使用 主要是為了挖掘xss漏洞 jquery 主要寫一些涉及到CSRF指令碼使用的或者DOM型XSS,JSON劫持等2:後端語言 基礎語法要知道例如 變數型別,常量,陣列(pyt

springcloud學習筆記eureka服務註冊與發現

springcloud可以方便的幫我們完成微服務架構,它擁有多個子專案,可以去官網簡單看下介紹。 其中component下的代表著現有的子專案,本次所記錄的eureka就是其中spring-cloud-netflix裡的一個模組。 eureka在我們微服務架構中實現的就是服務發現與

SpringCloud五大神獸Eureka

基本概念和方案     Eureka是基於REST(Representational State Transfer,代表性狀態傳輸)的服務,主要用於AWS雲中定位服務,以實現中間層伺服器的負載平衡和故障轉移。我們稱這個服務為Eureka伺服器。Eureka還帶有一個基於Ja

二、SpringCloud五大神獸Eureka(服務註冊與發現)

 ps:此工程為服務提供者叢集的建立並且註冊到eureka中,同時測試服務的發現,由於主要講解eureka知識,因此本例中一些其餘資料庫操作等例子不一一指出,在系列文章結尾會提供完整版例子下載。 1、pom檔案編寫: <dependencies> <

GO語言使用配置()虛擬機器安裝及配置(5)Mac OS X11系統安裝

完整文件下載:https://download.csdn.net/download/tdcqzd/10559739 對於Mac OS X11系統,VMWare是不支援的,所以我們首先需要破解軟體,在

Node.js實戰(十)Buffer

JavaScript 語言自身只有字串資料型別,沒有二進位制資料型別。 但在處理像TCP流或檔案流時,必須使用到二進位制資料。因此在 Node.js中,定義了一個 Buffer 類,該類用來建立一個專門存放二進位制資料的快取區。 在 Node.js 中,Buffer 類是隨 Node 核心一起釋出的核心庫

Eureka高可用Eureka Server複製機制:PeerAwareInstanceRegistryImpl

還是先提出幾個疑問,看本篇文章前最好看過Eureka高可用之Client重試機制:RetryableEurekaHttpClient,要知道Eureka Client只會向一個Server節點進行註冊(心跳、狀態改變等類似),註冊失敗時才會嘗試下一個server節點。當然正是由於這種機制,才會有

[TP5實戰]後臺管理使用layui建立搜尋+分頁

目的         在專案中,資料庫中有多條資料,我們使用搜索搜出來的資料會有很多,一個頁面根本無法完全顯示出來,所以需要分頁,但是,這個分頁會跟當前的分頁產生衝突,所以要把分頁和搜尋結合起來,這樣不僅方便,而且簡化了流程. 提示:閱讀本文需要15分鐘 方法    

SpringCLoud實戰微服務——微服務簡介以及入門使用

微服務概述微服務是什麼?微服務解決了什麼問題?微服務有什麼特點?單體架構是什麼?一個歸檔包包含了應用所有功能的應用程式,我們通常稱之為單體應用。架構單體應用的架構風格,我們稱之為單體架構,這是一種比較傳統的架構風格。單體架構存在的缺點:1.複雜性逐漸變高。2.技術債務逐漸上升

Nosql 理解+實戰 瞭解nosql

一 瞭解nosql 1 什麼是nosql  你的專案是否需要nosql   nosql能幹什麼  與傳統的關係型資料庫有何區別?在hadoop大資料叢集運用中所處的位置及作用;NoSQL常用的幾種資料庫 NoSQL名稱闡議: 1)   是“Not Only SQL”的縮