zoukankan      html  css  js  c++  java
  • springCloud笔记

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

    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:服务降级,优先处理订单、支付等服务。

  • 相关阅读:
    网络七层
    微信小程序开发工具 常用快捷键
    BZOJ 1026 windy数 (数位DP)
    BZOJ 1026 windy数 (数位DP)
    CodeForces 55D Beautiful numbers (SPOJ JZPEXT 数位DP)
    CodeForces 55D Beautiful numbers (SPOJ JZPEXT 数位DP)
    HDU 3709 Balanced Number (数位DP)
    HDU 3709 Balanced Number (数位DP)
    UVA 11361 Investigating Div-Sum Property (数位DP)
    UVA 11361 Investigating Div-Sum Property (数位DP)
  • 原文地址:https://www.cnblogs.com/3chi/p/9303462.html
Copyright © 2011-2022 走看看