码迷,mamicode.com
首页 > 其他好文 > 详细

Eureka 注册中心

时间:2020-02-28 01:27:11      阅读:52      评论:0      收藏:0      [点我收藏+]

标签:rpc   default   thrift   地址   maven   lookup   tar   请求   tcp   

RPC:
            远程过程调用,像调用本地服务(方法)一样调用服务器的服务
            支持同步、异步调用
            客户端和服务器之间建立TCP连接,可以一次建立一个,也可以多个调用复用一次链接

            PRC数据包小
                protobuf
                thrift
            rpc:编解码,序列化,链接,丢包,协议


        Rest(Http):
            http请求,支持多种协议和功能
            开发方便成本低
            http数据包大
            java开发:HttpClient,URLConnection

技术图片

 

 eueka按逻辑上可以划分为3个模块,eureka-server,service-provider,service-consumer

eureka-server:服务端,提供服务注册和发现
eureka-client-service-provider:服务端,服务提供者,通过http rest告知服务端注册,更新,取消服务
eureka-client-service-consumer:客户端,服务消费者,通过http rest从服务端获取需要服务的地址列表,然后配合一些负载均衡策略(ribbon)来调用服务端服务。

①新建Spring Boot工程,在pom.xml 中新增如下依赖

 

<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>net.xdclass</groupId>
<artifactId>eureka_server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>eureka_server</name>
<description>Demo project for Spring Boot</description>

<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR1</spring-cloud.version>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

</project>

 

 


②通过@EnableEurekaServer注解启动一个服务注册中心
例如:

技术图片

 

 ③添加application.yml配置

server:
  port: 8761
eureka:
  instance:
    hostname: localhost
  client:
    register-with-eureka: false
    fetch-registry: false
    serviceUrl:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

注意:在该默认配置下,注册中心也会将自己作为客户端尝试注册自己,因此要禁用客户端注册行为
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false

④启动应用,并访问http://localhost:8761/,可以看到如下图所示的Eureka信息面板,其中Instances currently registered with Eureka栏为空,说明该注册中心还没有注册服务。

技术图片

 

 

Eureka 注册中心

标签:rpc   default   thrift   地址   maven   lookup   tar   请求   tcp   

原文地址:https://www.cnblogs.com/zhuomuniao/p/12375379.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!