zoukankan      html  css  js  c++  java
  • spring cloud小结

    spring cloud小结

    Spring Cloud为开发者提供了在分布式系统(如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性Token、全局锁、决策竞选、分布式会话和集群状态)等微服务组件

    服务注册中心

    注册,续约(心跳机制,防止剔除),下线

    服务提供者

    服务消费者:负载均衡

    feign 默认打开了ribbon(负载均衡),以及hystrix(熔断).

    client的一套规则(选择服务提供者),默认线性选择

    RandomRule,随机规则。并发修改upList导致取出的server为空。

    RoundRobinRule:线性轮询,current++%serverCount

    RetryRule:依赖RoundRobinRule选择,加上重试时间的choose

    WeightResponseTimeRule: 根据响应时间,计算权重区间。计算随机权重,看看落到哪个区间,调用哪个服务

    ClientConfigEnableRoundRobinRule

    BestAvailableRule

    PredicateBasedRule

    AvailabilityFilterRule,

    ZoneAvoidanceRule

    feign 依赖ribbon实现服务的均衡调用。

    Eureka:高可用,多示例

    hystrix:断路器,依赖aop实现

    服务降级,

    configcenter

    多环境配置

    zuul

    • 动态路由
    • 监控
    • 安全
    • 认证鉴权
    • 压力测试
    • 金丝雀测试
    • 审查
    • 服务迁移
    • 负载剪裁
    • 静态应答处理

    sleuth

    数据收集,存储,展现

    收集流程

    业务示例

    zipkin具有存储展现能力,内存型存储和mysql、es和cassadra

    日志收集涉及到一个采样频率

    数据存储涉及到一个日志跟踪问题。traceId

    http://tech.lede.com/2017/04/19/rd/server/SpringCloudSleuth/sleuthZipkinHttp.png

    分布式锁

    db实现,主键不重复,行锁,selectForUpdate

    唤醒机制:

    连接池耗费完的问题,事务超时

    redis:setNx

    没有唤醒机制,自带失效删除。

    zookeeper ,创建节点,其他现在通过watch机制来唤醒 ,羊群效应,因为watch机制,接收了很多无关信息。

    系统上线问题

    代码级别:记录超时的log

    com.alibaba.common.lang.diagnostic.Profiler

  • 相关阅读:
    ng-class中的if else判断
    Sass 的使用
    pre 标签的使用
    C++操作 SQL数据库 实例 代码步骤
    自己写的一个操作Mysql的简单的实例
    C++ 链接Mysql 函数介绍
    Mysql 操作命令 详解
    MFC程序开始的执行过程详述
    Java各种日期格式的获取和设置指定日期
    DM8168 OpenCV尝试与评估(编译ARM版OpenCV)
  • 原文地址:https://www.cnblogs.com/zhulongchao/p/7353078.html
Copyright © 2011-2022 走看看