SpringCloud-注册中心简单了解与使用

2023-11-04

什么是SpringCloud?

大家都知道SpringCloud是一种微服务架构(模式)

SpringCloud简单来说就是微服务架构技术落地实现的集合体,是微服务架构下的一站式解决方案

说人话的话就是:
可以很高的提高在项目开发中的性能

什么是微服务(能干什么)?

单体架构
在这里插入图片描述
单体架构:

优点:

  • 易上手
  • 开发快
  • 成本低
  • 性能低

缺点:

  • 一个地方出错导致全部运行出错down机
  • 部署简单
  • 存在并发问题

微服务架构:

优点:

  • 将复杂的业务拆分成多个业务,每个业务是一个独立的微服务,彻底的去耦合,利于分工,当需要增加业务的时候,可以方便创建新的微服务扩展业务,而不用担心有没有别的地方耦合
  • 每个微服务之间可以使用不同的编程语言和不同的数据库
  • 高性能,一个地方down机其他服务可以运行

缺点:

  • 微服务比单体建构要更为复杂些,搭建起来比较麻烦
  • 成本高

为什么要用SpringCloud?

SpringCloud简单来说就是微服务架构技术落地实现的集合体,是微服务架构下的一站式解决方案

组件很多如下:

  • 注册中心——Netflix Eureka
  • 消息队列——Netflix Ribbon(MQ)|负载均衡
  • 断路器——Netflix Hystrix
  • 服务网关——Netflix Zuul
  • 分布式配置——Spring Cloud Config

注册中心

前言:
在早些年刚出来的SpringCloud来自于Apache
近些年Alibaba的SpringCloud慢慢的替代了Apache

就像Spring被SpringBoot替代了一样,只是把一些功能上的优化与加强了.

肯定觉得讲了这么多内容,接下来上代码开撸
首先要知道Cloud还是基于Boot上来优化与增加的

省略---------构建项目的环节

Apache的Cloud:

父工程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>
    <modules>
        <module>coupon-eureka</module>
    </modules>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.8.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>cn.aiweiyi.qingjing.coupon</groupId>
    <artifactId>coupon</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <properties>
        <java.version>1.8</java.version>
        <spring-cloud.version>Greenwich.SR3</spring-cloud.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>RELEASE</version>
            <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>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>
</project>

启动项的配置:

/**
 * @author 青衿
 * @Date 2020/11/12 11:20
 **/
@SpringBootApplication 
@EnableEurekaServer //开启注册中心服务
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
    }
}

resources配置:application.yml

spring:
  application:
    name: coupon-eureka
server:
  port: 8000
eureka:
  instance:
    #Eureka Server实例是本机
    hostname: localhost
  client:
      #由于我们只搭建单台Eureka Server,不需要多台Server之间的
      #由于注册信息同步,因此fetch-registry设置为false
      fetch-registry: false
      #由于本模块自身就是Eureka Server,且是单台,不需要把自己
      #注册到Eureka Server,因此设置为false
      register-with-eureka: false
      #本eureka Server对外提供注册、发现服务的地址
      service-url:
        defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

单服务的注册中心就配置好了,可以启动了

在这里插入图片描述
这样的话就启动成功了,咱们去访问一下

在这里插入图片描述

这样注册中心就ok了

接下来,咱们配置多服务注册
首先打开C盘的这个位置:C:\Windows\System32\drivers\etc\hosts 文件
在这里插入图片描述
在hosts文件中加上下面三个配置即可

122.1.1.1		server1
122.1.1.1		server2
122.1.1.1		server3

咱们使用(cmd)maven的命令来启动一下:

java -jar coupon-eureka-1.0-SNAPSHOT.jar --spring.profiles.active=server1
java -jar coupon-eureka-1.0-SNAPSHOT.jar --spring.profiles.active=server2
java -jar coupon-eureka-1.0-SNAPSHOT.jar --spring.profiles.active=server3

打开三个窗口分别执行

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

这样的话就成功了

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringCloud-注册中心简单了解与使用 的相关文章

随机推荐