zoukankan      html  css  js  c++  java
  • springcloud-注册中心快速构建

    1. 场景描述

    springcloud提供了一整套可行的构建分布式系统的方案,使的企业/开发人员能够快速沟通分布式系统,今天快速构建下springcloud的注册中心Eureka。

    2. 解决方案

    2.1 springcloud介绍

    COORDINATE ANYTHING: DISTRIBUTED SYSTEMS SIMPLIFIED

    Building distributed systems doesn't need to be complex and error-prone. Spring Cloud offers a simple and accessible programming model to the most common distributed system patterns, helping developers build resilient, reliable, and coordinated applications. Spring Cloud is built on top of Spring Boot, making it easy for developers to get started and become productive quickly.

    2.2 项目构建

    使用的idea终极版,springcloud项目本身就是springboot项目(springboot与springcloud的关系)。

    首先在idea中创建项目:file-->new-->project

    两个默认next后选择组件

    默认next->finish

    2.3 配置文件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>
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.4.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
        </parent>
        <groupId>com.spc</groupId>
        <artifactId>eurekaserver</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <name>eurekaserver</name>
        <description>Demo project for Spring Boot</description>
    
        <properties>
            <java.version>1.8</java.version>
            <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
            </dependency>
            <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>
            </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>
    
    

    说明:

    (1)springcloud本身是springboot项目,新建springboot项目。

    (2)需要两个starter,eureka-server和eureka-client

    2.4 application启动类

    package com.spc.eurekaserver;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
    
    @SpringBootApplication
    @EnableEurekaServer
    public class EurekaserverApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(EurekaserverApplication.class, args);
        }
    
    }
    
    

    说明:

    比springboot项目多了一个标签:@EnableEurekaServer,该标签用于标注是注册中心。

    2.5 application.yml文件

    spring:
      application:
        name: registry
    
    server:
      port: 8761
    eureka:
      client:
        register-with-eureka: false
        service-url:
          defaultZone: http://localhost:8761/eureka/
    

    说明:

    (1)name为项目名称;

    (2)port: 8761为启动端口。

    (3)eureka下面的配置暂时不用,后续用于在高可用配置的时候,作为客户端注册到另一台注册中心,实现高可用。

    2.6 启动应用


    I'm 软件老王,如果觉得还可以的话,关注下呗!如有不准确或疑问的地方,可通过讨论区、QQ沟通,多谢!

  • 相关阅读:
    pycharm 操作excel
    pycharm 增删改查 mysql数据库
    fillder 抓包工具详解
    acunetix 12.0.190902105 破解方法
    Navicat15 最新版本破解版操作步骤
    网站性能优化检测工具
    linux 服务器资源 监控工具
    win10系统git的安装与使用命令
    测试入门基础知识
    Pycharm2020.2 专业版永久激活 免费下载激活插件与参数
  • 原文地址:https://www.cnblogs.com/ruanjianlaowang/p/11204981.html
Copyright © 2011-2022 走看看