微服务相关原理与治理
微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如 Dubbo 和 Spring Cloud。 目前微服务实现方式主要有两种Dubbo和SpringCloud: 一、 Dubbo :(https://www.cnblogs.com/liangblog/p/6165070.html) Dubbo是一个分布式服务框架,致力于提供高性能透明化RPC远程调用方案,提供SOA服务治理解决方案。 Dubbo使用 RPC 通讯协议。 架构原理 :(http://dubbo.apache.org/zh-cn/docs/user/preface/architecture.html) 服务容器负责启动,加载,运行服务提供者。 服务提供者在启动时,向注册中心注册自己提供的服务。 服务消费者在启动时,向注册中心订阅自己所需的服务。 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。 zookeeper注册中心: 注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外