• 《分布式服务框架原理与实践》阅读笔记2


    序列化与反序列化

      序列化和反序列化是RPC框架的基础组成部分,设计的好坏对服务化框架的性能、可扩展性和可靠性影响都很大。尽管业界存在多款序列化框架,但是我们在设计时需要从功能丰富度、跨语言支持、兼容性、性能,甚至社区活跃度等多个角度去综合考量,从中择优。

      Serializable, xml, json, MessagePack, fastjson, Protocol Buffer, Thrift, Avro.

    协议栈

      对接异构第三方服务时,通常会选择HTTP/RESTFUL等公有协议;对于内部不模块的服务调用,往往会选择性能较高的二进制私有协议。

      链路创建,由调用方发起创建,双方握手后创建。链路关闭,发生异常后或者接收到关闭信号后关闭链路。

    服务路由

      分布式服务框架.上线运行时都是集群组网,这意味着集群中存分布式服务框架.上线运行时都是集群组网,这意味着集群中存务提供者进行调用,这就涉及到服务路由。分布式服务框架要能够满足用户灵活的路由需求。

      基于服务注册中心的订阅发布;消费者缓存提供者地址;

      负载均衡(随机、轮循、调用时延、一致性哈希、粘滞连接(会话保持));

      路由策略,本地路由优先,条件规则路由,脚本路由规则。

    集群容错

      容错策略:失败切换(failover),失败通知(failback),失败缓存(failcache), 快速失败(failfast),扩展。

      集群容错从功能.上看很简单,设计也并不复杂,但是该特性却非常重要,相比于传统的RPC框架,分布式服务框架让用户开发变得更简单,体验也更好。从功能上看,服务框架需要提供更丰富、更细粒度的功能和扩展点,这就是它相比于传统RPC框架最大的优势。

  • 相关阅读:
    HelloWorld
    CSS盒子模型
    CSS选择器
    Win右键管理员权限的获取
    本地存储
    python模块以及导入出现ImportError: No module named 'xxx'问题
    python pexpect 学习与探索
    VI查找与替换
    python 中__name__ = '__main__' 的作用
    python 脚本传递参数
  • 原文地址:https://www.cnblogs.com/dream0-0/p/13097181.html
Copyright © 2020-2023  润新知