IDEA项目搭建六——使用Eureka进行项目服务化

Posted taiyonghai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IDEA项目搭建六——使用Eureka进行项目服务化相关的知识,希望对你有一定的参考价值。

一、Eureka的作用

这里先简单说明使用eureka进行业务层隔离,实现项目服务化也可以理解为微服务,我一直崇尚先实现代码再学习理论,先简单上手进行操作,eureka使用分为三块,1是服务注册中心,2是服务生产模块,3是服务消费模块

技术分享图片

关系调用说明:

  • 服务生产者启动时,向服务注册中心注册自己提供的服务
  • 服务消费者启动时,在服务注册中心订阅自己所需要的服务
  • 注册中心返回服务提供者的地址信息给消费者
  • 消费者从提供者中调用服务

服务生产者会每30s发送心跳,向服务中心续租服务有效时间,当一段时间生产者没有向服务中心续租将会被移出服务提供注册表

二、搭建eurkea服务注册中心

新建Project或者Module,选择Maven结构

技术分享图片

简单看一下我的模块结构

技术分享图片

1、修改pom.xml文件,增加springboot和springcloud的配置,由于使用的最新的spring boot所以spring cloud也是使用最新版本,注意这里的version是Finchley.RELEASE

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.0.3.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Finchley.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
    </dependencies>
<build>
    <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

2、新建resources文件夹并在File -> Project Structure 中设置为Resources格式,并增加application.yml格式文件,也可用properties格式

spring:
  application:
    #Eureka服务注册中心名称
    name: javademo-tyh-eureka-server

server:
  #服务注册中心端口号
  port: 11000

eureka:
  instance:
    #服务注册中心主机名
    hostname: localhost

  client:
    #是否向服务注册中心注册自己
    register-with-eureka: false
    #是否检索服务
    fetch-registry: false
    #服务注册中心的地址
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

  3、在main方法的类中增加注解,从main方法中写spring boot的运行代码

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

@EnableEurekaServer
@SpringBootApplication
public class AppEureka
{
    public static void main( String[] args ) {
        SpringApplication.run(AppEureka.class, args);
    }
}

OK,现在eurkea的服务注册中心就配置完毕了,从main这里启动一下,浏览器中访问http://localhost:11000就能看到运行状态界面了,如果端口号冲突自己修改一下即可 

 技术分享图片

 

三、搭建后端服务生产模块

 

四、搭建前端服务消费模块

 

以上是关于IDEA项目搭建六——使用Eureka进行项目服务化的主要内容,如果未能解决你的问题,请参考以下文章

升级微服务架构1:搭建Eureka Server服务中心

最基础的Eureka服务和注册搭建

SpringCloud基础Eureka:服务注册与发现

springcloud-eureka高可用集群搭建

码上微服务- 环境搭建 - Eureka注册中心

eureka服务注册与发现:搭建注册中心