spring cloud搭建教程

spring cloud搭建教程Springcloud 是一个基于 SpringBoot 实现的服务治理工具包 在微服务架构中用于管理和协调服务的微服务 就是把一个单体项目 拆分为多个微服务 每个微服务可以独立技术选型 独立开发 独立部署 独立运维 并且多个服务相互协调 相互配合 最终完成用户的价值 SpringCloud 是一系列框架的有序集合 其主要的设施有 服务发现与注册 配置中心 消息总线 负载均衡 断路器 数据监控等 通过 SpringBoot 的方式 可以实现一键启动 和部署

spring cloud简介

         Spring cloud是一个基于Spring Boot实现的服务治理工具包,在微服务架构中用于管理和协调服务的微服务:就是把一个单体项目,拆分为多个微服务,每个微服务可以独立技术选型,独立开发,独立部署,独立运维.并且多个服务相互协调,相互配合,最终完成用户的价值. Spring Cloud是一系列框架的有序集合。其主要的设施有,服务发现与注册,配置中心,消息总线,负载均衡,断路器,数据监控等,通过Spring Boot的方式,可以实现一键启动,和部署。

Spring 没有重新造车轮,只是把各家的应用给综合起来。最后给开发者遗留下了一个足够简单的,相当容易部署的,相当容易学习的Spring 体系。至于为什么要学习Spring Cloud的体系,因为原先的体系过于复杂了,导致开发的环境艰难,正是由于开发的环境的艰难,Spring Cloud 的是Spring体系的简化版,简化了原有的复杂。

spring cloud搭建

        博主使用的是IntelliJ IDEA 2021.1.2 版本进行环境搭建演示,如果使用Eclipse等IDE进行开发可以查看论坛内其他博主的博客进行学习。

        spring cloud搭建教程

打开IntelliJ IDEA 

点击file – new – project按钮创建一个新的项目

        spring cloud搭建教程

 spring cloud搭建教程

 设置GroupId和项目名称和项目路径

spring cloud搭建教程

spring cloud搭建教程

 这时我们进入IDEA以后会发现我们项目只有Springcloud_Demo一个父项目,下面我问会创建Eureka,Zuul,Service等子模块对项目进行创建来实现微服务

修改Pom文件

再进行Eureka模块搭建之前我们需要先对”Springcloud_Demo“pom文件进行相关Jar包的依赖导入

spring cloud搭建教程

完整代码如下

 
   
   
   
     4.0.0 
    
   
     com.xmy 
    
   
     Springcloud_Demo 
    
   
     1.0-SNAPSHOT 
    
    
    
    
      org.springframework.boot 
     
    
      spring-boot-starter-parent 
     
    
      2.1.4.RELEASE 
     
    
    
    
    
      UTF-8 
     
    
      1.8 
     
    
      Greenwich.RELEASE 
     
    
    
    
     
      
      
        org.springframework.cloud 
       
      
        spring-cloud-dependencies 
       
      
        ${spring-cloud-release.version} 
       
      
        pom 
       
      
        import 
       
      
     
    
    
    
     
     
       spring-milestones 
      
     
       Spring Milestones 
      
     
       https://repo.spring.io/milestone 
      
      
      
        false 
       
      
     
    
  

创建Eureka注册中心模块

关于Eureka

Eureka是基于REST(Representational State Transfer)服务,主要以AWS云服务为支撑,提供服务发现并实现负载均衡和故障转移。我们称此服务为Eureka服务。Eureka提供了java客户端组件,Eureka Client,方便与服务端交互。客户端内置了基于round-robin实现的简单负载均衡。在Netifix,为Eureka提供更为复杂的负载均衡方案进行封装,以实现高可用,它包括基于流量、资源利用率以及请求返回状态的加权负载均衡。

创建Eureka模块

spring cloud搭建教程 

右键点击SpringCloud_Demo父项目后,将鼠标拖入New选项框,点击Module选项创建子模块

spring cloud搭建教程

点击next进行下一步操作

设置Eureka子模块名称,子模块路径,点击finish完成子模块创建

spring cloud搭建教程

 spring cloud搭建教程

修改Eureka子模块的Pom文件

spring cloud搭建教程

 

当Eureka子模块创建完成的时候,这时Eureka_Demo的pom.xml是没有Jar包依赖的的,我们需要手动导入Eureka需要的Jar包依赖。

详细代码如下

 
   
   
    
    
      Springcloud_Demo 
     
    
      com.xmy 
     
    
      1.0-SNAPSHOT 
     
    
   
     4.0.0 
    
   
     Eureka_Demo 
    
    
     
     
     
       org.springframework.boot 
      
     
       spring-boot-starter-web 
      
     
     
     
     
       org.springframework.cloud 
      
     
       spring-cloud-starter-netflix-eureka-server 
      
     
       2.2.1.RELEASE 
      
     
    
  

创建核心配置文件application.yml

spring cloud搭建教程

 代码如下:

# Tomcat server: port: 9099 # Spring spring: application: # 应用名称 name: eureka-demo eureka: client: sevice-url: defaultZone: http://localhost:${server.port}/eureka register-with-eureka: false fetch-registry: false

 创建Application启动类

spring cloud搭建教程

 

将EurekaApplication启动类配置到Configurations中

点击IDEA右上角的Add Configurations按钮,点击左上角的加号按钮后点击Spring Boot选项进入设置页面,设置启动名称以及启动类文件收点击OK按钮完成设置。

spring cloud搭建教程

 启动Eureka

spring cloud搭建教程

在浏览器输入访问地址: http://localhost:9099访问Eureka注册中心

 spring cloud搭建教程

创建Zuul网关模块

关于Zuul

创建Zuul子模块

右键点击SpringCloud_Demo父项目后,将鼠标拖入New选项框,点击Module选项创建子模块

spring cloud搭建教程

 点击Finish完成子模块创建

spring cloud搭建教程

修改Zuul子模块的Pom文件

spring cloud搭建教程

 当Zuul子模块创建完成的时候,这时Zuul_Demo的pom.xml是没有Jar包依赖的的,我们需要手动导入Zuul需要的Jar包依赖。

详细代码:

 
   
   
    
    
      Springcloud_Demo 
     
    
      com.xmy 
     
    
      1.0-SNAPSHOT 
     
    
   
     4.0.0 
    
   
     Zuul_Demo 
    
    
     
     
     
       org.springframework.cloud 
      
     
       spring-cloud-starter-netflix-zuul 
      
     
     
     
     
       org.springframework.cloud 
      
     
       spring-cloud-starter-netflix-eureka-client 
      
     
    
  

创建核心配置文件Application

spring cloud搭建教程

详细代码:

server: port: 10010 spring: application: name: zuuldemo zuul: prefix: /api eureka: client: service-url: defaultZone: http://localhost:9099/eureka 

 在Zuul_Demo模块下的src/main/resources文件夹下创建application.yml核心配置文件,进行编写核心配置

编写ZuulApplication启动类

spring cloud搭建教程

在Zuul_Demo模块下的src/main/java/com/xmy路径下创建ZuulApplication.java文件

详细代码如下:

package com.xmy; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.cloud.netflix.zuul.EnableZuulProxy; @EnableZuulProxy @EnableEurekaClient @SpringBootApplication public class ZuulApplication { public static void main(String[] args){ SpringApplication.run(ZuulApplication.class,args); } } 

将ZuulApplication启动类配置到Configurations中

spring cloud搭建教程

 启动Zuul网关模块

spring cloud搭建教程

可以看到Zuul网关服务已经被注册到Eureka注册中心。

创建Service服务模块

关于Service

Service模块是客户端模块,用户编写代码和功能实现。前端请求发送到Zuul网关再有网关发送到Service服务,可以是系统的安全性提升。

创建Service子模块

 右键点击Cloud_Demo父项目后,将鼠标拖入New选项框,点击Module选项创建子模块,

点击ArtifactId输入框输入Service模块名称,在此我们使用Service_Demo进行命名。

点击Finish按钮完成子模块创建。

spring cloud搭建教程

修改Service子模块的Pom文件

spring cloud搭建教程

详细代码:

 
   
   
    
    
      Springcloud_Demo 
     
    
      com.xmy 
     
    
      1.0-SNAPSHOT 
     
    
   
     4.0.0 
    
   
     ServiceDemo 
    
    
     
     
     
       org.springframework.boot 
      
     
       spring-boot-starter-web 
      
     
     
     
     
       org.springframework.cloud 
      
     
       spring-cloud-starter-netflix-eureka-client 
      
     
     
     
     
       tk.mybatis 
      
     
       mapper-spring-boot-starter 
      
     
       2.0.4 
      
     
     
     
     
       mysql 
      
     
       mysql-connector-java 
      
     
     
     
     
       com.github.pagehelper 
      
     
       pagehelper-spring-boot-starter 
      
     
       1.2.3 
      
     
    
  

创建核心配置文件

spring cloud搭建教程

详细代码:

server: port: 9080 spring: application: name: demoservice datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/cloud_project?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC username: root password: 1022 eureka: client: service-url: defaultZone: http://localhost:9099/eureka 

在Service_Demo模块下的src/main/resources文件夹下创建application.yml核心配置文件,进行编写核心配置

编写ServiceApplication启动类

spring cloud搭建教程

在Service_Demo模块下的src/main/java/com/xmy路径下创建ServiceApplication.java文件

详细代码:

package com.xmy; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; @SpringBootApplication @EnableEurekaClient public class ServiceApplication { public static void main(String[] args){ SpringApplication.run(ServiceApplication.class,args); } } 

 

将ServiceApplication启动类配置到Configurations中

spring cloud搭建教程

 设置启动名称和启动路径后点击OK按钮

启动Service服务模块

spring cloud搭建教程

可以看到Zuul网关和Service服务都被注册到Eureka注册中心。到此我们的已经完成环境搭建。之后需要自行在Service服务中编写代码来实现功能,想创建多个service都可以,另外每个服务也可以链接不同的数据库;到此一个简单的Spring Cloud的环境搭建已经完成。 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/220453.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午8:26
下一篇 2026年3月17日 下午8:27


相关推荐

  • Java虚拟机:常见JVM参数配置和GC性能优化

    Java虚拟机:常见JVM参数配置和GC性能优化

    2021年10月5日
    35
  • 发送udp数据包

    发送udp数据包nbsp 在 Socket 编程中 发送数据报文可供使用的 API 函数有 send sendto 和 sendmsg 下面是关于前两个系统调用的原型 includessize tsend intsocket constvoid buffer size tlength intflags nbsp nbsp nbsp nbsp 请注意它的返回值的类型 ssize t 其含义是 signedsize 从内核代码中 我们可以看

    2026年3月18日
    2
  • id 生成器

    id 生成器应用场景全局流水号区分前后台订单号参考电商订单号设计的资料数据库主键[单调]递增可能考虑分库分表

    2022年6月16日
    43
  • 多线程之ForkJoin框架[通俗易懂]

    多线程之ForkJoin框架[通俗易懂]Fork/Join框架是Java7提供了的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。工作窃取算法工作窃取算法:通过此算法降低线程等待和竞争。工作窃取(work-stealing)算法是指某个线程从其他队列里窃取任务来执行。那么为什么需要使用工作窃取算法呢?假如我们需要做一个比较大的任务,我们可以把这个任务分割为若干互不依赖的子任

    2026年2月1日
    6
  • Python divmod函数

    Python divmod函数Pythondivmod 函数的介绍 使用和注意事项

    2026年3月26日
    2
  • 什么叫单页面开发_获取当前页面url

    什么叫单页面开发_获取当前页面url参考网址https://www.cnblogs.com/belongs-to-qinghua/p/11151054.htmlhttp://www.zhiliaotang.net/jishujiaoliu/web/965.html单页面开发:单页面开发常用于webapp开发和后台管理系统等单页面应用原理:我们通常所说的单页面应用程序通常是通过前端框架vue,react,angular…

    2022年10月13日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号