分布式和集群的理解:比如在一个厨房有两个厨师,一个炒菜,一个洗菜,各自做不同的事情,但是却在合作,这种叫做分布式,两个都在炒菜或者都在做菜,就叫做集群。

eureka的是springCloud的注册中心,有服务端和客户端,客户端启动后会到服务端集群中注册节点,服务端的集群配置是:每个服务端都要注册到除了自己的其他服务端节点上。

不适合用微服务的场景:1,访问压力不大。2,强事务性的系统。3,系统稳定,迭代周期长。

节点间访问有两种方式:前端:eureka,后端:nginx,zookeeper等负载均衡方式。

dubbo和springCould节点间通信方式区别:dubbo是rpc方式,springCloud是restful方式。

springCloud的两种restful调用方式:RestTemplete和Feign,这两种都是使用ribbon做负载均衡。

RestTemplete有三种访问方式:用第三种。

ribbon:客户端负载均衡器,通过获取的服务端节点,通过负载均衡策略命中目标节点。RestTemplete就是通过Ribbon的基础上实现的。默认是轮训的负载均衡规则,可以通过配置文件修改默认的负载均衡规则。

Feign使用方式:1:maven引包,2:启动类设置注解,3:编写特殊Feign类。

3种问题:服务端实体类直接返回不好,不能直接暴露、不能重复在两个服务定义重复的实体类、Feign的接口服务不应该写在客户端,应该写在服务端。解决方式就是把服务多模块化,通过maven引包进行调用、多封装一层数据层,包装真正的数据实体。

为什么需要配置中心:1是不安全,2是不方便,3是修改配置需要重新部署。

怎么做服务高可用:启动多个节点,注册到eureka就可以了

各服务要调用配置中心的东西,必须用bootstrap.yml,这样强制先调用配置中心的配置再加载配置信息,不然会报错。

配置中心:注册到eureka的配置不要放在配置中心,应该提取出来。

配置中心:如果配置中心有order-yml,order-test.yml,则如果访问配置中心的地址是xxx/order-test.yml,则这两个配置都会获取到。所以可以把公用的配置放在order.yml里面。

配置中心实现自动获取最新配置不用重启服务:1,引入客户端引入spring-Cloud bus包,注意spring boot和springcloud的版本;通过配置服务server的相关配置,开放bus-reflesh接口;3,在git远程仓库配置webHook地址,注意得是有域名地址。4,客户端动态获取参数得加上ReflushScope注解。

rabbitmq的exchange交换机的作用就是随着业务的复杂,生产者不用知道要把消息发给哪个队列,而是直接发给exchange交换机,带上key的名称,这样交换机就能知道转发到哪个队列了。

zuul:网关-》路由+过滤器,类似于一系列的过滤器,有pre,rounting,post,error,自定义custom等,前置可以作为限流、校验、权限验证,后置可以作为日志、统计等功能。

zuul的高可用也是可以作为微服务,启动多个服务注册到eureka就可以了

可以同nginx和zuul混合使用。

spring cloud hystrix:服务降级,优先处理订单、支付等服务。

springCloud笔记的更多相关文章

  1. SpringCloud笔记六:Hystrix

    目录 Hystrix是什么? Hystrix服务熔断 新建Hystrix项目 修改yml Maven的pom.xml添加hystrix引用 修改Controller Hystrix服务降级 修改api ...

  2. SpringCloud笔记五:Feign

    目录 什么是Feign? 有了Ribbon我还要Feign干嘛? 新建consumer-feign 修改api项目 引入Maven文件 新建feign的接口 启动项目 报错 发泄发泄心情,一个段落 什 ...

  3. SpringCloud笔记四:Ribbon

    目录 什么是Ribbon? Ribbon的配置 Maven引入 开启注解 Ribbon负载均衡 新建provider8002和8003 Ribbon核心组件IRule Ribbon自定义 什么是Rib ...

  4. SpringCloud笔记三:Eureka服务注册与发现

    目录 什么是Eureka? Eureka注册的三大步 第一步,引用Maven 第二步,配置yml 第三步,开启Eureka注解 新建Eureka子项目 把provider子项目变成服务端 Eureka ...

  5. SpringCloud笔记二:搭建项目基础框架

    目录 搭建框架 新建父工程 新建子工程api 新建子工程提供者provider 新建消费者consumer 总结 搭建框架 我们的SpringCloud微服务框架是父子工程,有一个父工程,剩下的都是子 ...

  6. SpringCloud笔记一:扫盲

    目录 前言 什么是微服务? 微服务的优缺点是什么? 微服务之间是如何通讯的? SpringCloud和Dubbo有哪些区别? SpringCloud和SpringBoot的关系? 什么是服务熔断?什么 ...

  7. springcloud 笔记

    官方教程 http://projects.spring.io/spring-cloud/ guide https://github.com/spring-guides 伪官方教程 https://sp ...

  8. springcloud 笔记-服务注册中心

    1.搭建springcloud服务注册中心需要添加eureka的依赖: <?xml version="1.0" encoding="UTF-8"?> ...

  9. SpringBoot+SpringCloud 笔记

    SpringBoot总结 使用Typora打开https://pan.baidu.com/s/1tXS45j6ooXpnzhy1Zp78Gw 提取码: c8fi SpringCloud总结 使用XMi ...

随机推荐

  1. html5自带表单验证

    起因:今天无意中发现chrome的input框自带表单验证!于是就去试试firefox,惊奇的发现也有自带的验证提示,只不过两者的样式不一样 chrome中的样子: firefox中的样子: 发散:具 ...

  2. 如何利用Git生成pitch和打pitch

    利用Git生成和应用patch  在程序员的日常开发与合作过程中,对于code的生成patch和打patch(应用patch)成为经常需要做的事情. 什么是patch?简单来讲,patch中存储的是你 ...

  3. java idea 代码规范插件

    推荐阿里的 p3c https://github.com/alibaba/p3c

  4. 服务器硬盘--SAS盘和SATA盘

    一.SAS和SATA SATA: Serial Advanced Technology Attachment,又叫串口硬盘,是将主机总线适配器连接到硬盘的总线接口. SAS: Serial Attac ...

  5. 删除pending.xml

    如果提示不能删除 需要在cmd命令行中执行如下命令 echo y|cacls D:\Windows\winsxs\reboot.xml /p everyone:f del /q D:\Windows\ ...

  6. JS里的<!-- //--> 注释有什么作用

    早期浏览器有很多种(目前很少了),对HTML的解释也不同.有种纯文本浏览器,只“翻译”文本内容,并只支持少量HTML标签.对交互式的代码视同纯文本.因此,我们称其为不支持javascript的浏览器( ...

  7. java学习--Iterable 和 Iterator

    Iterable Iterable :故名思议,实现了这个接口的集合对象支持迭代,是可迭代的. 一个集合对象要表明自己支持迭代,能有使用foreach语句的特权,就必须实现Iterable接口,表明我 ...

  8. mysql学习一 常用语句

    操作系统为windows  1 启动关闭mysql服务 //windows mysqld --console //开启mysql服务 mysqladmin -uroot shutdown //关闭my ...

  9. vue中less文件全局引用

    1.先安装sass-resources-loader   npm install sass-resources-loader 2.然后在build->utils.js修改less配置 在less ...

  10. 手机访问电脑端Wampserver2.4-x64服务

    我用的Wampserver2.4-x64 1. 先确保你的手机和电脑连在同一个局域网内. 2. Window + R, 然后输入 ipconfig,然后获取ip地址, 长这样: 192.168.XX. ...