`

eureka服务端和客户端的简单搭建

阅读更多

     本篇博客简单记录一下,eureka 服务端和 客户端的简单搭建。

目标:

    1、完成单机 eureka server 和 eureka client 的搭建。

    2、完成eureka server 的添加安全认证,即不能别人知道我们的eureka server地址就可以注册上去。

    3、测试环境下,关闭eureka的自我保护

 

一、eureka server 端的搭建

1、引入依赖
<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-security</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    注意:
           1、由于服务端需要保护,因此还引入了security依赖。
2、编写配置文件
spring:
  application:
    name: eureka-server


server:
  port: 8761
  tomcat:
    uri-encoding: utf-8
eureka:
  client:
    register-with-eureka: false # 由于eureka即可以作为服务端也可以作为客户端,此处是作为服务器段,因此这个参数需要设置成false: 即不作为一个客户端注册到服务注册中心
    fetch-registry: false # true:表示作为一个客户端中eureka server 服务端获取服务注册信息,此处作为一个服务端因此需要设置成 false
    service-url:
      defaultZone : http://${security.user.name}:${security.user.password}@${eureka.instance.hostname}:${server.port}/eureka/
  instance:
    hostname: localhost
  server:
    # 此处表示关闭 eureka 的自我保护
    enable-self-preservation: false
    # 清理无效节点的时间间隔,默认是60s,此处修改成10s
    eviction-interval-timer-in-ms: 10000

security:
  basic:
    enabled: true # 开启basic认证
  user:
    name: root # 用户名
    password: admin # 密码
   注意:
          1、默认情况下eureka即可以做为服务端,也可以做为客户端,此处作为服务端,因此需要将 register-with-eureka的值改成false,即不注册到eureka server上。

           2、fetch-registry: 服务端这个值 需要改成 false, 即不去检索服务。

           3、security 开头的配置是因为引入了spring security保护server端,因此 需要注意 service-url 中的 defaultZone 的值的写法 : http://用户名:密码@主机:端口/eureka/

           4、enable-self-preservation的值设置成 false 表示 关闭eureka的自我保护

                     客户端需要修改下方2个参数的值,正式环境不建议修改。

            # 客户端与服务器断心跳的时间间隔,默认为 30秒
            lease-renewal-interval-in-seconds: 3
            # 租约到期时间,此值不可过小,开发环境小点没有事,默认为 90秒
            lease-expiration-duration-in-seconds: 9
         
3、编写启动类
@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

	public static void main(String[] args) {
		SpringApplication.run(EurekaServerApplication.class, args);
	}
}

   注意:

         1、 eureka server 的服务端上需要加上  @EnableEurekaServer 注解,表示作为服务端启动。

 

 二、eureka client 端的搭建

1、引入依赖
<dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
 2、编写配置文件
server:
  port: 8762


eureka:
  client:
    service-url:
      defaultZone : http://${security.user.name}:${security.user.password}@localhost:8761/eureka/   #连接到服务注册中心的地址,如果服务注册中心开启了权限需要设置 http://username:password@ip:port/eureka/格式
  instance:
    prefer-ip-address: true
    instance-id: ${spring.application.name}:${spring.cloud.client.ipAddress}:${server.port}

    # 客户端与服务器断心跳的时间间隔,默认为 30秒
    lease-renewal-interval-in-seconds: 3
    # 租约到期时间,此值不可过小,开发环境小点没有事,默认为 90秒
    lease-expiration-duration-in-seconds: 9

security:
  user:
    name: root
    password: admin
spring:
  application:
    name: eureka-client


info:
  app:
    name: "eureka-client"
    description: "eureka-client程序"
    version: "0.0.1"
    注意:

           1、注意一下注册到 eureka server 上 url 的编写格式。

           2、spring.application.name 表示注册到eureka服务上的名字,建议小写。

 

 3、编写启动类
@SpringBootApplication
@EnableDiscoveryClient
public class EurekaClientApplication {

	public static void main(String[] args) {
		SpringApplication.run(EurekaClientApplication.class, args);
	}
}

    注意:

           1、eureka client需要加上 @EnableDiscoveryClient 注解,表示这个一个客户端。

 

三、运行界面

 1、浏览器上输入 : http://localhost:8761 回车后,填写用户名(root)/密码(admin) 登录即可看到这个页面

 

 四、完整代码地址:

       https://gitee.com/huan1993/spring-cloud-parent.git  里面 eureka-server和eureka-client即为本篇博客的代码。

 

  • 大小: 105.8 KB
分享到:
评论

相关推荐

    SpringCloud的Eureka的客户端和服务端的简单搭建

    首先,我们来看Eureka服务端的搭建。服务端是Eureka的核心,它负责维护服务实例的信息。创建一个新的Spring Boot项目,然后在`pom.xml`中添加Spring Cloud Eureka Server的依赖: ```xml &lt;groupId&gt;org.spring...

    Eureka注册中心,服务端搭建

    至此,一个简单的Eureka服务端就搭建完成了。接下来,你可以将其他微服务应用配置为Eureka客户端,实现服务注册和发现功能。在客户端配置中,需要设置`eureka.client.register-with-eureka`和`eureka.client.fetch-...

    21-Spring Cloud注册中心Eureka&集群1

    **Spring Cloud Eureka** 是一个基于 REST 的服务发现组件,...通过配置 Eureka 服务端和客户端,以及搭建 Eureka 集群,可以确保微服务架构中的服务能够稳定、高效地进行通信,同时增强了整个系统的容错性和可扩展性。

    微服务之eureka.doc

    本文主要介绍了如何在Spring Cloud项目中集成Eureka Server,构建服务发现的能力,并重点阐述了Eureka服务端集群的搭建方法及其高可用性的实现原理。通过Eureka服务发现机制的应用,可以极大地简化微服务架构中的...

    eureka-demo.zip

    在"eureka-demo.zip"中,我们可以找到一个简单的Eureka客户端和服务端的示例,通过这些代码我们可以学习如何集成Eureka到我们的项目中。 首先,我们来看服务端(Eureka Server)。Eureka Server 负责接收服务实例的...

    OneNote-Springcloud.pdf

    用户可以快速启动和运行Eureka服务端和客户端、Ribbon负载均衡器、Hystrix断路器、Feign声明式REST客户端、Zuul API网关等核心组件。 1. 什么是Spring Cloud: Spring Cloud是分布式微服务架构的一站式解决方案,它...

    spring cloud eureka 注册中心服务端

    10. **配置高可用**:为了保证Eureka Server本身的高可用,通常我们会搭建多个Eureka Server实例,并形成集群,通过互相注册来实现服务的复制和同步。 在实际应用中,我们还需要关注Eureka与其他Spring Cloud组件的...

    Eureka集群的实现-示例项目

    1. **Eureka服务端配置**: - 每个Eureka Server节点都需要在配置文件(如application.properties或application.yml)中指定自己的实例ID和服务端口,同时设置`eureka.instance.appname`来区分不同的节点。 - 要使...

    eureka包含client,server工程

    例如`spring-boot-starter-web`用于Web服务,`spring-cloud-starter-netflix-eureka-client`和`spring-cloud-starter-netflix-eureka-server`则分别用于Eureka的客户端和服务端。开发者只需要在`pom.xml`文件中定义...

    eureka+springboot搭建成功

    Eureka Server 提供服务注册和发现的能力,充当微服务架构中的注册中心,而 Eureka Client 则是一个 Java 客户端,用于简化与 Eureka Server 的交互,通常在微服务中作为服务的客户端和服务端。 为了搭建 Eureka ...

    spring-cloud-eureka集群的搭建.zip

    例如,设置`eureka.instance.app-name`为不同的值以区分不同实例,同时设置`eureka.client.register-with-eureka`和`eureka.client.serviceUrl.defaultZone`,让每个实例互相注册为对方的客户端。 3. **启动Eureka ...

    SpringBoot微服务搭建代码下载 源码

    5. **微服务间通信**:如果服务端包含了服务发现和客户端负载均衡,可以学习如何配置Eureka服务器,以及如何在服务端和客户端使用`@LoadBalanced`和Ribbon来实现智能路由。 6. **安全控制**:Spring Security可以...

    springcloud-Netflix-eureka demo 可做参考

    本项目"springcloud-Netflix-eureka demo"提供了一个基于Spring Boot搭建的基础服务框架,旨在帮助开发者理解和学习如何使用Eureka进行服务注册与发现,以及Ribbon客户端负载均衡。 首先,我们来看Eureka。Eureka是...

    第一个Eureka项目

    在这个“第一个Eureka项目”中,我们将深入理解Eureka的工作原理,并通过实践搭建一个包含消费者(eureka-consumer)、提供者(eureka-provider)和服务端(eureka-server)的简单系统。 首先,我们要了解Eureka...

    Eureka框架学习demo

    通过这个示例,你可以学习到如何搭建Eureka服务器,如何编写服务提供者和消费者,以及如何利用Ribbon进行负载均衡。这个过程对于理解Spring Cloud生态系统的运作模式非常有帮助,同时也为构建自己的分布式系统打下了...

    springcloudEureka.pdf

    在实施Spring Cloud Eureka时,可以采用Spring Boot来快速搭建Eureka服务端。文档中提到的一个入门案例中,展示了如何通过Spring Boot搭建Eureka Server。在这个案例中,使用了Maven来管理项目依赖,首先在pom.xml...

    spring cloud eureka-server

    本压缩包文件包含的“eureka-server”可能是一个预配置好的Eureka服务器实例,使得用户可以直接运行以快速搭建服务注册中心。 在微服务架构中,每个服务都是独立的,它们之间需要通过API进行通信。Eureka Server的...

    springboot2.0+springcloud+Eureka+fegin分布式项目demo

    在实际操作中,开发者需要注意配置文件的设置,如Eureka的配置(包括服务端和客户端),Feign的配置(如超时时间、重试机制等),以及服务提供者和服务消费者的接口定义。此外,日志管理和监控也是微服务开发中不可...

    【java项目整合Axis1.4webservice搭建实例】服务端代码

    Axis1.4是Apache软件基金会开发的一个Java Web服务栈,它基于SOAP(简单对象访问协议)和WSDL(Web服务描述语言),使得开发者能够轻松地创建、部署和使用Web服务。Axis1.4支持JAX-RPC(Java API for XML-RPC)规范...

Global site tag (gtag.js) - Google Analytics