博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Cloud--实战
阅读量:5061 次
发布时间:2019-06-12

本文共 1968 字,大约阅读时间需要 6 分钟。

 

 

前言

  本例摘自汪云飞编著的《Java EE开发的颠覆者 Spring Boot实战》

  

 

  主要有6个微服务组成:

    config:配置服务

    discovery:注册服务

    person:为UI模块提供保存person的REST服务

    some:为UI模板返回一段字符串

    UI:作为应用网关,提供外部访问的唯一接口。使用Feign消费person服务、Ribbon消费some服务 ,且都提供断路器功能。

    monitor:监控UI模块中的断路器。

 

1.项目构建

  新建模块化的maven项目ch12,修改pom.xml文件:

  1.1使用<modules>标签来实现模块化 

     1.2使用spring-cloud-starter-parent替代spring-boot-starter-parent,其具备spring-boot-starter-parent的同样功能并附加了Spring Could的依赖。
  

   1.3添加依赖,对所有子模块都是有效的,即在子模块中不再添加这些模块。

    

 

 

2.注册服务-Discovery

  2.1注册服务依赖于Eureka Server,所以需要加上依赖:

    

  2.2修改入口类,加上注解@EnableEurekaServer,开启对EurekaServer的支持。

    

  2.3配置,这里使用yml配置。

  application.yml

    

3.配置服务

  通过Config Server,我们可以集中存储所有应用的配置文件。

  3.1修改pom.xml文件,添加依赖;作为配置服务的依赖spring-cloud-config-server,作为eureka客户端的依赖spring-cloud-starter-eureka;

    

  3.2修改入口类,开启配置服务器的支持,开启作为eureka server客户端的支持。

    

  3.3配置

  bootstrap.xml   : 负责从外部资源加载配置属性

    

  application.yml

    

  配置其他应用所需的配置文件的位置位于类路径下的config目录下:

    

 

4.服务模块--Person服务

   4.1添加依赖

    

 

   4.2修改入库类

    

 

   4.3配置  

   bootstrap.yml

    

  application.yml

    

 

5.服务模块--Some服务

   5.1依赖

    

  5.2修改入库类

    

  5.3配置

  bootstrap.yml

    

  application.yml

    

6.界面模块-UI

  6.1本模块会使用ribbon、feign、zuul以及CircuitBreaker,添加相关依赖;本模快是一个具有界面的模块,所以通过webjar加载了一些常用的脚本框架:

    

    

  6.2修改入库类

    

  6.3使用feign调用Person Service

    

  ·6.4调用Person Service的断路器

    

  6.5使用ribbon调用Some Service,并使用断路器

    

  6.6配置

  bootstrap.yml

    

 

   application.yml

    

 

 

 

 

7.断路器监控-Monitor

  7.1依赖

    

  7.2入库类

    

 

   7.3配置

  bootstrap.yml

    

 

  application.yml

    

 

8.运行

  依次启动DiscoveryAppliction、ConfigApplication,后面的微服务部分顺序启动,最后启动MonitorApplication。

  启动完成后,访问http://localhost:8761,查看Eureka Server。

  

 

  8.1访问UI服务。http://localhost:8090

 

 

  8.1.1调用Person Service.

  

 

  8.1.2调用Some service

 

 

   8.2断路器

  停掉Person Service和Some Service,观察断路器效果。

 

 

  8.3断路器监控

  访问http://localhost:8989/hystrix.stream

 

 

  输入http://localhost:8090/hystrix.stream

 

  监控界面:

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/ly0215-start-na/p/9372749.html

你可能感兴趣的文章
Mysql与Oracle 的对比
查看>>
MVC系列博客之排球计分(三)模型类的实现
查看>>
npm安装
查看>>
阅读笔记02
查看>>
2019年春季学期第二周作业
查看>>
2014北邮计算机考研复试上机题解(上午+下午)
查看>>
mySQL 教程 第7章 存储过程和函数
查看>>
OGG同步Oracle到Kafka(Kafka Connect Handler)
查看>>
算法笔记_056:蓝桥杯练习 未名湖边的烦恼(Java)
查看>>
idea的maven项目无法引入junit
查看>>
jquery实现限制textarea输入字数
查看>>
thinkphp5 csv格式导入导出(多数据处理)
查看>>
页面置换算法-LRU(Least Recently Used)c++实现
查看>>
如何获取Android系统时间是24小时制还是12小时制
查看>>
fur168.com 改成5917电影
查看>>
PHP上传RAR压缩包并解压目录
查看>>
codeforces global round 1题解搬运
查看>>
python os模块
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
jenkins常用插件汇总
查看>>