一个天气的微服务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 ...
随机推荐
- 修改placeholder的值---input-placeholder
input-placeholder .box::input-placeholder 目前所有的浏览器都要加前缀 .box::-webkit-input-placeholder{ color: agba ...
- python全栈开发笔记---------变量小结
变量是什么? 变:变化,重在变字,量:计量,衡量,表示一种状态. 变量字面理解就是一个可能改变的量,也就是这个值是不固定的. 变量名: a.数字 b.字母 c.下划线 变量的定义 level = 1 ...
- 关于执行findbugs,checkstyle,jacoco插件检测代码,GitHook的脚本编写
Git钩子的作用: (pre-commit ) 在用户执行 git commit -m "xxx" 命令之前,先执行pre-commit文件中的脚本命令 在pre-commit文件 ...
- 三. Python基础(3)--语法
三. Python基础(3)--语法 1. 字符串格式化的知识补充 tpl = "我是%s,年龄%d,学习进度100%" %('Arroz',18) print(tpl) # 会提 ...
- 线程queue与进程queue
进程queue: from multiprocessing import Queue,Process def func(qq): qq.put('function:我要放数据,给你来取...') if ...
- Cracking The Coding Interview5.2
//Given a (decimal - e.g. 3.72) number that is passed in as a string, print the binary representatio ...
- 延迟载入Dll(动态载入Dll)
windows核心编程(第五版)20.3节的延迟载入Dll 延迟载入Dll技术出现的原因: 因为DLL的加载是比较浪费时间的,特别是大型软件加载,因此,这项技术是在应对软件初始化过程中避免浪费太多的时 ...
- ssm使用双数据源
工作中需要接入其他公司业务系统的数据进行分析,于是接入它们的db. 使用双数据源配置感觉如下: database.sessionFactory.扫描器.事务管理器等双份. 听说如果两个数据源需要一起使 ...
- Alpha冲刺2
前言 队名:拖鞋旅游队 组长博客:https://www.cnblogs.com/Sulumer/p/9960487.html 作业博客:https://edu.cnblogs.com/campus/ ...
- 手机号的 AES/CBC/PKCS7Padding 加解密
前言:接口中上次的手机号码和密码是传入的加密的,模拟自动化的时候也需要先对数据进行加密 1.各种语言实现 网上已经各种语言实现好的AES加密,可以点击查看:http://outofmemory.cn/ ...

