thinker对《分布式服务框架:原理与实践》的笔记(9)

thinker
thinker (技术就是信仰!志在终身探索!)

读过 分布式服务框架:原理与实践

分布式服务框架:原理与实践
  • 书名: 分布式服务框架:原理与实践
  • 作者: 李林锋
  • 页数: 312
  • 出版社: 电子工业出版社
  • 出版年: 2016-1-15
  • 第5页 前言

    随着RPC框架的推广和使用日益深入,一些新的公共需求被反馈过来: 1、依赖管理:当服务越来越多时,服务URL配置管理变得非常困难,希望有一个统一的服务注册中心管理服务的依赖关系。 2、透明路由:通过订阅发布机制,消费者只需要关系服务本身,并不需要配置具体的服务提供者地址,实现服务的自动失效。 3、服务治理:业务失败之后的放通处理,超时时间控制、流控等常用运维功能,希望能够独立出一个服务治理中心,统一对集群各节点的服务做在线治理,提升治理效率,保障服务SLA。 为了解决这些问题,以RPC框架为核心,我们构建了全新的分布式服务框架,相比于传统RPC框架,它提供了如下新特性: 1、基于注册中心的服务订阅/发布机制,支持服务自动发现和健康状态检测。 2、集群容错。 3、依赖解耦,全配置化开发,对应用零侵入。 4、服务治理,包括服务降级、服务调用链跟踪、服务上线审批和下线通知等。 5、服务化最佳实践等。

    2016-05-02 11:44:01 回应
  • 第1页 第1章 应用架构演进

    传统垂直架构改造的核心就是要对应用做服务化改造,服务化改造使用到的核心技术架构就是分布式服务框架。

    2016-05-02 12:00:42 回应
  • 第6页 第1章 应用架构演进

    RPC的全称是Remote Procedure Call,它是一种进程间通信方式。允许像调用本地服务一样调用远程服务,它的具体实现方式可以不同,例如Spring的HTTP Invoker,Facebook的Thrift二进制私有协议通信。

    2016-05-02 12:36:41 回应
  • 第8页 第1章 应用架构演进

    1.2.2 最简单的RPC框架实现 下面通过Java原生的序列化、Socket通信、动态代理和反射机制,实现最简单的RPC框架。它由三部分组成: 1)服务提供者,它运行在服务端,负责提供服务接口定义和服务实现类。 2)服务发布者,它运行在RPC服务端,负责将本地服务发布成远程服务,供其他消费者调用。 3)本地服务代理,它运行在RPC客户端,通过代理调用远程服务提供者,然后将结果进行封装返回给本地消费者。

    2016-05-02 13:14:43 回应
  • 第17页 第1章 应用架构演进

    1、当服务越来越多时,服务URL配置管理变得非常困难,F5等硬件负载均衡器的单点压力也越来越大。此时需要一个服务注册中心,动态地注册和发现服务,使服务的位置透明。消费者在本地缓存服务提供者列表,实现软负载均衡,这可以降低对F5等硬件负载均衡的依赖,也能降低硬件成本。 2、随着业务的发展,服务间依赖关系变得错综复杂,甚至分不清哪个应用要在哪个应用之前启动,架构师都不能完整地描述应用之间的调用关系。需要一个分布式消息跟踪系统可视化展示服务调用链,用于依赖分析、业务调用路径梳理等,帮助架构师理清不合理的服务依赖,防止业务服务架构腐化。 3、服务调用量越来越大,服务的容量问题就暴露出来了,某个服务需要多少机器支撑、什麽时候该加机器?为了解决容量规划问题,需要采集服务调用KPI数据,进行汇总和分析,通过计算得出服务部署实例数和服务器的配置规格。 4、服务上线容易下线难,上线前的审批,下线通知,需要统一的服务全生命周期管理流程进行管控。不同的服务安全权限不同,如何保证敏感服务不误调用?服务的访问安全策略又如何制定。 5、服务化之后,随之而来的就是服务治理问题。目前业界开源纯粹的RPC框架服务治理能力都不健全,当应用大规模服务化之后会面临许多服务治理方面的挑战,要解决这些问题,必须通过服务框架 + 服务治理来完成,单凭RPC框架无法解决服务治理问题。

    2016-05-02 16:09:21 回应
  • 第19页 第1章 应用架构演进

    服务化后带来的挑战: 1、分布式框架下的服务调用性能 2、服务化架构如何支持线性扩展 3、如何实现高效、实时的服务多维度监控 4、大规模分布式环境下的故障快速定界和定位 5、分布式环境下海量日志在线检索、模糊查询 6、服务的流控、超时控制、服务升降级等管控手段。 7、服务的划分原则,如何实现最大程度复用。

    2016-05-02 16:37:12 回应
  • 第27页 第2章 分布式服务框架入门

    大规模系统架构的设计一般原则就是尽可能地拆分,以达到更好的独立扩展与伸缩、更灵活的部署、更好的隔离和容错、更高的开发效率。

    2016-05-02 18:09:48 回应
  • 第198页 第15章 服务降级

    服务降级主要包括容错降级和屏蔽降级两种模式。

    2016-05-06 15:31:04 回应
  • 第199页 第15章 服务降级

    尽管可以通过线程隔离等方式保证服务之间的资源隔离,但是100%的隔离是不现实的。特别是对缓存、网络I/O、磁盘I/O、数据库连接资源等公共依赖无法隔离,在业务高峰期或者大促时,服务之间往往存在激烈的竞争,导致订购等核心服务运行质量下降,影响系统的稳定运行和客户体验。

    2016-05-06 15:38:50 回应

thinker的其他笔记  · · · · · ·  ( 全部932条 )

爱、金钱和孩子:育儿经济学
1
微服务架构设计模式
1
Kubernetes in Action中文版
1
工业大数据
1
Netty进阶之路:跟着案例学Netty
1
从零开始学架构
1
图解TCP/IP(第5版)
1
大型网站技术架构演进与性能优化
1
阿里巴巴Java开发手册
1
ZeroC Ice权威指南
1
RocketMQ实战与原理解析
1
研究是一门艺术
1
并行计算机组成与设计
3
从Paxos到Zookeeper
5
陈省身传
2
我怎样设计飞机
1
丘成桐的数学人生
2
区块链原理、设计与应用
1
人类2.0
1
Hadoop技术内幕
1
刷新
2
ceph设计原理与实现
1
数据库系统实现
1
数据的本质
1
有了博士学位还不够
5
人工智能简史
1
曾国藩的正面与侧面
1
数学沉思录
2
Linux/Unix设计思想
2
大数据技术原理与应用
2
DevOps
1
Druid实时大数据分析原理与实践
1
互联网创业核心技术:构建可伸缩的web应用
2
生产微服务
2
可伸缩架构
4
支撑处理器的技术
1
大数据之路
1
证析
4
从大数据到智能制造
1
Google
1
系统虚拟化
2
架构真经
2
亿级流量网站架构核心技术
2
推荐系统
2
Hadoop技术内幕
2
Hadoop实战(第2版)
2
大数据日知录
8
分布式系统原理与范型
2
通向财务自由之路
1
大型网站服务器容量规划
1
黑科技
1
成为技术领导者
1
深入理解计算机系统(原书第2版)
4
布道之道
2
SRE
7
现代操作系统(第3版)
1
HotSpot实战
2
分布式系统
2
分布式Java应用
5
追时间的人
1
公钥基础设施PKI及其应用
2
图解密码技术
4
软技能
8
海量数据库解决方案
2
如何有效阅读一本书
2
分布式计算
6
领域驱动设计
3
精进
1
发布!软件的设计与部署
7
架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)
12
计算机程序的构造和解释(原书第2版)
2
Java并发编程
10
Java性能权威指南
2
Netty权威指南(第2版)
13
高扩展性网站的50条原则
13
微服务设计
5
向前一步
1
构建高性能Web站点
3
Java TCP/IP Socket编程
7
TCP/IP详解 卷1:协议
2
洞察力的秘密
1
性能之巅
5
七周七语言
2
游戏之旅
2
微服务架构与实践
4
24小时365天不间断服务
4
必然
1
科学的极致:漫谈人工智能
1
搜索引擎
12
智识分子
1
野心時代
1
语言本能
1
硅谷之谜
2
莎士比亚、牛顿和贝多芬
4
策略思维
4
代码整洁之道
8
人类简史
1
HTML5 WebSocket权威指南
2
京东技术解密
6
致青年学者
2
天才在左 疯子在右
7
操作系统
13
超越智商
2
解忧杂货店
1
女人的起源
2
Java并发编程的艺术
2
机器人叛乱
2
图解HTTP
7
管理成就生活
8
追风筝的人
1
编码的奥秘
4
增长黑客
8
Functional Programming in Scala
1
小王子
3
大学之路(套装)
1
交办的技术
3
白帽子讲Web安全
4
被驯化的大脑
2
Hadoop权威指南(第2版)
3
想象力革命
5
叔本华思想随笔
8
阿米巴经营
2
Java并发编程实战
2
禅与摩托车维修艺术
3
颠覆式创新:移动互联网时代的生存法则
1
MySQL技术内幕
3
互联网+:跨界与融合
2
产品型社群
6
柔道战略
2
儿童的人格教育
4
眨眼之间
1
我读管理经典
12
我的钱:互联网金融,如何理财?
1
一课经济学
4
大规模分布式存储系统
32
技术垄断
3
自私的基因
5
奇点临近
3
大规模分布式系统架构与设计实战(含光盘)
1
可穿戴设备:移动互联网新浪潮
2
创业维艰
7
翻转课堂的可汗学院
1
Web性能权威指南
6
孤独的科学之路
5
分布式操作系统
7
重塑大脑,重塑人生
2
程序员必读之软件架构
8
从0到1
7
众病之王
4
天才的拓荒者
7
九败一胜
6
将心注入
12
上脑与下脑:找到你的认知模式
3
贫穷的本质
4
稀缺
8
数学之美
8
知日!知日!这次彻底了解日本 01
1
智慧宫
6
通往奴役之路
1
内存数据管理
9
心外传奇
3
万万没想到
5
金融的哲学
33
不敢止步
6
数据之巅
10
企业集成模式
1
怎样才是最好的学习?
5
佐藤可士和的创意思考术
1
采购与供应链管理
9
参与感
8
三体Ⅱ
10
三体
4
穿布鞋的马云
12
周鸿祎自述
6
深入理解Java虚拟机
2
人类的群星闪耀时
7
计算机的心智
7
管理的实践
1
咨询的奥秘
2
咨询的奥秘
4
工程学:无尽的前沿
5
谁说大象不能跳舞(珍藏版)
2
再看电商
2
登陆火星
3
建筑的永恒之道
5
文明之光(第二册)
4
文明之光(第一册)
4
大教堂与集市
5
系统思维
3
情景规划
2
互联网金融
2
流程的永恒之道
4
决战大数据
2
谷歌和亚马逊如何做产品
3
高效能程序员的修炼
4
程序员的呐喊
5
程序员的修炼
8
常识的正面与反面
5
百年思索
5
大型网站系统与Java中间件开发实践
2
创新者的解答
7
你的第一本哲学书
4
技术的本质
14
淘宝技术这十年
29
颠覆医疗
5
理性乐观派
17
大道当然
9
走出电商困局
1
我看电商
1
反脆弱
8
MacTalk 人生元编程
1
不可思议的年代
6
开源的成功之路
3
信息简史
3
Java应用架构设计
10
金融e时代
2
游戏改变世界
3
如何高效学习
3
平台战略
2
大型网站技术架构
3
移动金融
1
大数据云图
3
大规模Web服务开发技术
3
奇特的一生
3