2、springcloud基本构建(Eureka)-服务提供者

项目工程目录如下

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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.cloud</groupId>
    <artifactId>springcloudeurekaclient</artifactId>
    <version>1.0-SNAPSHOT</version>


    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.17.RELEASE</version>
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>



    <dependencies>
        <!--引入springcloud的euekea server依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            <version>1.4.6.RELEASE</version>
        </dependency>
    </dependencies>

    <!--指定下载源和使用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>

</project>

启动类EurekaClientApplication(增加了注解@EnableDiscoveryClient)注意跟注册中心服务注解不一样。。。。

package com.cloud.client;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication
@EnableDiscoveryClient
public class EurekaClientApplication {

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


}

application.properties

server.port=8092

spring.application.name=client-service
eureka.instance.hostname=localhost
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:8090/eureka

Demo类

package com.cloud.client.business;

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RequestMapping("/client/hello")
public class DemoController {

    @PostMapping("/world")
    public String helloWorld(@RequestParam("str") String str) {
        System.out.println("hello world");
        return str + " clientService";

    }


}

访问注册中心:http://localhost:8090/  该服务已在注册中心eureka注册成功

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: spring-cloud-starter-netflix-eureka-server是一个基于Spring Cloud的服务注册和发现组件,它实现了Netflix的Eureka服务发现框架,可以让服务提供者在启动时向Eureka Server注册自己提供的服务,并定期向Eureka Server发送心跳以表明服务的可用性。同时,服务消费者也可以通过Eureka Server来发现可用的服务提供者,从而实现服务调用。通过使用spring-cloud-starter-netflix-eureka-server,开发者可以更加方便地构建和管理基于微服务架构的应用程序。 ### 回答2: Spring Cloud Starter Netflix Eureka Server(简称Eureka Server)是一个基于Spring Cloud的开源项目,它提供了服务注册中心的功能,使得系统中的各个微服务可以方便地进行服务的注册和发现,极大地简化了微服务架构中的服务管理过程。 Eureka Server主要通过RESTful API来实现微服务的注册发现。当一个微服务启动时,它会向注册中心发送一个REST请求,注册自己的相关信息。同时,Eureka Server也会定时向微服务发送心跳检测请求,确认微服务是否在线。如果某个微服务长时间没有收到心跳请求,Eureka Server就会将其从注册中心中删除,避免因为调用失效引起服务瘫痪。 对于服务的发现,Eureka Server提供了两个核心组件:Eureka Server和Eureka Client。Eureka Server是服务注册中心,它维护了所有可用的微服务实例,并提供API供客户端进行服务发现。Eureka Client是服务提供者,它会在启动时向Eureka Server进行注册,并定时向Eureka Server发送心跳,以表明自己仍然存活。客户端再使用Eureka Server提供的API进行查找和调用服务。 Spring Cloud Starter Netflix Eureka Server集成了Netflix的Eureka Server组件,同时还提供了配置注解和一些常用的配置项,使得使用Eureka Server可以更加方便灵活。 在微服务架构中,Eureka Server已经成为了不可或缺的组件之一,能够大大简化微服务的管理,提高系统的高可用性与稳定性。 ### 回答3: spring-cloud-starter-netflix-eureka-server是基于Spring Cloud和Netflix开发的一个分布式服务注册与发现框架,可帮助开发者快速构建基于微服务的分布式应用系统。所谓的微服务架构,是将一个大型应用系统划分为许多小型微服务,每个微服务负责一项独立的任务,不同的微服务之间通过HTTP协议或消息队列等方式进行通信,从而实现整体应用系统的高可用、高伸缩性和高并发等优点。 其中,Eureka Server是Netflix开源的服务治理组件之一,为了实现分布式服务的注册与发现而设计的高可用、可扩展、自我保护能力强的服务注册中心。Spring Cloud通过整合Eureka Server,将其变成了一个可插拔的组件,让开发者无需了解太多的原理和细节就能轻松实现服务注册和发现的功能。使用Spring Cloud Starter Netflix Eureka Server,只需在pom.xml文件中引入相应的依赖即可,不用再进行额外的配置,即可快速搭建和部署一个中心化的服务注册与发现平台。 除了实现服务注册与发现功能,Spring Cloud Starter Netflix Eureka Server还支持多数据中心部署、容错处理、健康检查和自我保护等特性,能够帮助开发者优化应用性能和提升用户体验。在实际应用场景中,Eureka Server和其他Spring Cloud组件结合使用,可以实现更复杂的微服务应用架构,例如服务网关、分布式配置中心、负载均衡等功能。 综上所述,Spring Cloud Starter Netflix Eureka Server是一个功能强大、易于使用的微服务治理组件,它可帮助开发者快速搭建和部署分布式应用系统,提升系统的可靠性和稳定性,是目前开发分布式应用系统的理想选择之一。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值