一个天气的微服务springcloud
1.开发环境 jdk8 和 gradle 4.


---------------搭建一个天气预报系统

1.bootstrap就是一堆样式文件,首先有html标签,然后加上各种样式以后就变得好看了
2.js文件通常放在static文件夹下,因为它加载比较慢所以是这样的操作
3.thmelef他类似jsp的模板
------------------------------Spring Cloud的拆分方法

PS:驱动设计原则

PS:
服务发现:去服务注册表中调用服务
统一入口:根据入口的名称找服务
配置管理:为了管理多个服务
熔断机制:对系统的防护,比如访问量过大,可以切断访问,防止自己崩溃掉
自动拓展:符合突然增大,可以动态拓展











PS:是一家美国视频公司,开源自己的组件




















PS: 注意点
1.要先启动服务端,再启动四个客户端









PS:s他是基于客户端的负载均衡工具,可以基于http和tcp; ribbon提供服务消费




服务之间的相互调用
PS : 声明式web服务客户端

1.开启EurekaServer, 开启另一服务(比如城市), 通过建立接口进行访问

PS: 建立本地的Controller

PS:修改配置文件








PS:管理所有的api,形成api统一的入口











1.


PS : 开启Eureka Server,开启Eureka Client;可以直接访问hello; 测试的时候配置的是hi/hello ,然后被代理转发了
简单的说,就是开启三个服务,server,client,zull调用





--------------


PS: Zull其实为了方便的 地址请求
-------------------------------------------------------------------














PS: 指定一个固有的git仓库; 然后该仓库下的一个路径; 这个就是配置中心

PS: 会报错,不要在意,没有启动Eureka Server










PS: 拿到了config的配置在github的 配置内容



PS: 当请求太大的时候,我自己把切断请求



PS: 上图是azure提供的断路器, 正常的时候 断路器是关闭的状态,服务正常提供;当失败很多的时候,超过阀值 断路器就会打开,异常信息直接响应改用户。
半打开是比如刚断路器关闭的时候,大量服务过来导致服务再次失败。 然后在中间起到缓冲的作用


PS: 上图是Hystrix 提供的解决方案,失败给提示失败响应










---测试
1.启动Server
2.启动城市服务


断开城市微服务,提示断路器数据



PS: 用一个fallback实现类,实现异常



--------------------测试
1.启动Eureka Server 、redis
2. conllection启动
PS:启动两次Conllection


PS: 两次data


PS:两次city


PS:两个report


PS: zulll聚合网关


PS : 从新采集一把数据, 不然redis中没数据


PS:关闭8085和8086,发现只有两个地方了,这就模拟出来了错误

PS: 杀死8087和8088

---------------------------------------------------------------------------------------------------------------------------

























一个天气的微服务springcloud的更多相关文章
- 微服务SpringCloud之配置中心和消息总线
在微服务SpringCloud之Spring Cloud Config配置中心SVN博客中每个client刷新配置信息时需要post请求/actuator/refresh,但客户端越来越多时,,需要每 ...
- Java生鲜电商平台-深入理解微服务SpringCloud各个组件的关联与架构
Java生鲜电商平台-深入理解微服务SpringCloud各个组件的关联与架构 概述 毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术.不过大多数讲解还停留 ...
- 「 从0到1学习微服务SpringCloud 」10 服务网关Zuul
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」06 统一配置中心Spring Cloud Config 「 从0到1学习微服务SpringCloud 」07 RabbitM ...
- 「 从0到1学习微服务SpringCloud 」09 补充篇-maven父子模块项目
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」06 统一配置中心Spring Cloud Config 「 从0到1学习微服务SpringCloud 」07 RabbitM ...
- 「 从0到1学习微服务SpringCloud 」08 构建消息驱动微服务的框架 Spring Cloud Stream
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...
- 「 从0到1学习微服务SpringCloud 」07 RabbitMq的基本使用
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...
- 「 从0到1学习微服务SpringCloud 」06 统一配置中心Spring Cloud Config
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...
- 「 从0到1学习微服务SpringCloud 」05服务消费者Fegin
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...
- 「 从0到1学习微服务SpringCloud 」04服务消费者Ribbon+RestTemplate
系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...
随机推荐
- Centos常用快捷键
终端快捷键 tab=补全 ctrl+a=开始位置 ctrl+e=最后位置 ctrl+k=删除此处至末尾所有内容 ctrl+u=删除此处至开始所有内容 ctrl+d=删除当前字母 ctrl+w=删除此 ...
- Cracking The Coding Interview 1.4
//Write a method to decide if two strings are anagrams or not. // // 变位词(anagrams)指的是组成两个单词的字符相同,但位置 ...
- NAND Flash vs NOR Flash
Avinash Aravindan reference:https://www.embedded.com/design/prototyping-and-development/4460910/2/Fl ...
- 90%会搞错的JavaScript闭包问题
由工作中演变而来的面试题 这是一个我工作当中的遇到的一个问题,似乎很有趣,就当做了一道题去面试,发现几乎没人能全部答对并说出原因,遂拿出来聊一聊吧. 先看题目代码: function fun(n,o) ...
- Java语法基础学习DaySeven
---恢复内容开始--- 一.包装类——Wrapper 1.定义:针对八种基本数据类型定义相应的引用类型——包装类(封装类) boolean——Boolean byte——Byte ...
- Alpha冲刺1
前言 队名:拖鞋旅游队 组长博客:https://www.cnblogs.com/Sulumer/p/9948330.html 作业博客:https://edu.cnblogs.com/campus/ ...
- 2017-2018-2 20165214 实验四《Android开发基础》实验报告
一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:朱文远 学号:20165214 指导教师:娄嘉鹏 实验日期:2018年5月14日 实验时间:15:35 - 17:15 实验序号:四 ...
- synchronized(七)
package com.bjsxt.base.sync006; /** * 死锁问题,在设计程序时就应该避免双方相互持有对方的锁的情况 * @author alienware * */public c ...
- 在html5中不支持<table>的cellpadding 和 cellspacing ; 2) 如何用css实现 cellpadding, cellspacing ; 3) tr , th 是 有 border, 没有 padding 的.
1.初始: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- django面试五
http和https的区别https协议需要到ca申请证书,一般免费证书很少,需要交费. 注:CA - certificate authority,身份认证,权威机构认证,CA认证: http是超文本 ...

