《分布式架构设计》
《分布式架构设计》详细内容
《分布式架构设计》
《分布式架构设计》
传统单体应用到分布式系统设计最佳实践
主讲:陈国星
【课程背景】
随着互联网时代的到来,数据量急剧增加,并发量也越来越大,传统的应用访问起来变得越来越缓慢?企业如何快速的找到应用缓慢的根源并进行快速的优化?企业如何重新规划和设计高可用高并发的分布式系统的架构?
本课程围绕实际的项目中遇到的各种瓶颈展开,一方面有针对性的分别从分布式系统中常用中间件、讲解各类中间件的原理、应用场景以及如何构造高性能的大型的分布式的应用系统;另一方面,从数据库层面如何应对分布式系统下的扩容;分别结合实际的技术与案例进行讲解,为技术团队提供优秀的系统架构设计思路和方案,有效提供学员在开发大型系统项目过程中应具备的相关技能。
【课程收益】
了解分布式系统架构演变过程
掌握分布式系统原理
掌握分布式系统技术实现
【课程对象】CTO、技术总监、研发负责人、架构师、研发工程师、售前技术工程师、运维工程师
【课程时间】2天
【课程大纲】
一、分布式系统架构演变
1、分布式系统架构演变历程
Web动静态资源分离
前端静态资源缓存
本地数据缓存
应用负载均衡
CDN
分布式缓存
数据库读写分离
数据库垂直分库
数据库水平分库
分布式文件系统
案例:亿级流量分布式架构设计思路
二、分布式系统理论
1、CAP定理
分布式系统CAP定理的三个指标
CAP定理三个指标如何权衡和选择
2、BASE理论
BASE理论详解
BASE理论的定位
3、分布式系统面临挑战
分布式系统的目标
分布式系统的基础
单体垂直架构如何改造为分布式架构
分布式架构会引入哪些难题?
分布式系统的挑战
三、分布式系统之缓存
1、缓存
缓存的定义
缓存能解决什么问题?
缓存架构之分布式缓存与集中式缓存
缓存的基本原则
分布式缓存的持久化
分布式缓存的高可用
分布式缓存的横向扩展
分布式缓存常见业务场景分析
多级缓存
2、分布式系统缓存之Redis
分布式缓存之Redis
Redis常用数据结构及其应用场景
Redis高级特性:发布/订阅、过期设置、事务支持
Redis持久化策略之rdb与aof
Redis主从复制
Redis集群
Redis集群扩容
实战:基于redis实现的缓存会话共享案例分析
实战:redis集群搭建与部署
实战:基于redis实现的热数据缓存
实战:基于redis实现的分布式锁
四、分布式系统之消息队列
1、消息队列
分布式系统之同步调用案例分析
分布式系统同步调用存在问题与优化方向
消息队列之分布式系统异步调用案例分析
消息队列之削峰填谷案例分析
消息中间件选型与对比
消息队列编程模型之点对点
消息队列编程模型之发布/订阅
案例:基于分布式消息队列设计的千万级账单推送系统
实战:微服务架构下基于消息队列实现微服务间数据最终一致性
五、分布式系统之协调服务
1、分布式协调服务基础
2、分布式协调中间件之ZooKeeper
ZooKeeper诞生的背景和它的作用
ZooKeeper单机版安装、常用命令
ZooKeeper集群版的安装、节点角色
ZooKeeper的接入和使用
ZooKeeper运行机制剖析
ZooKeeper的典型应用场景与实现思路
ZooKeeperWatch机制的运行流程
案例:基于ZooKeeper实现的服务注册与发现
七、分布式系统之日志中心系统
1、日志分析面临问题
传统日志系统存在问题分析
如何实现日志统一搜集、统一存储、统一查询?
2、日志中心解决方案ELK
ELK应用案例分析
ELK核心组成
ELK之ElasticSearch
ELK之logstash
ELK之kibana
ELK之工作流程剖析
ELK常见应用架构
ELK典型应用架构
海量日志的ELK集群架构
案例:基于ELK实现的访问日志分析
八、分布式系统之分布式事务
1、分布式系统下数据库面临问题
本地事务VS分布式事务
二阶段提交协议过程与原理分析
二阶段提交协议的缺点
三阶段提交
分布式事务的目标
分布式事务之强一致性应用场景
分布式事务之最终一致性应用场景
2、分布式事务框架之Seata
分布式事务框架之Seata
Seata支持的4种模式
实战:微服务架构下基于Seata的4种模式实现微服务间数据强一致性
九、分布式系统之数据库层架构设计
1、分布式系统下数据库面临问题
什么是分库分表?
什么情况下需要分库分表?
分库分表之垂直分表
分库分表之垂直分库
分库分表之水平分表
分库分表之水平分库分表
分库分表带来的问题-跨库关联查询
分库分表带来的问题-分布式事务
分库分表带来的问题-排序翻页函数计算
分库分表带来的问题-全局主键避重
如何选择合适的数据分片键?分片键常用算法有哪些?
如何自定义分片键的算法?
2、分库分表主流中间件之客户端分库分表ShardingJDBC
分库分表主流中间件之客户端分库分表ShardingJDBC
ShardingJDBC对于现有应用的SQL或ORM有什么要求或局限性?
分库分表主流中间件之服务端分库分表MyCat
分布式数据库NoSQL
实战:基于ShardingJDBC实现的分库分表之广播表、绑定表方案
陈国星老师的其它课程
《互联网常用中间件之场景化实战》 01.15
《互联网常用中间件之场景化实战》企业中间件最佳实践主讲:陈国星【课程背景】随着互联网时代的到来,数据量急剧增加,并发量也越来越大,用户对于系统的体验和要求也变得越来越高,从而对系统可靠性、性能及可扩展性目标也提出了更大的挑战,企业的架构设计和开发人员熟悉业界主流成熟中间件的使用方法和场景就显得尤为重要。本课程围绕业界主流成熟中间件,以场景化案例方式贯穿整个课
讲师:陈国星详情
《软件安全设计与开发实战》 01.15
《软件安全设计与开发实战》快速掌握软件过程中的安全设计和安全编码主讲:陈国星【课程背景】随着互联网时代的到来,企业的应用也逐步转向互联网,以互联网形式开放给用户进行使用?而互联网带来最大的问题就是安全问题,企业如何解决互联网应用的安全问题?本课程在主动的安全开发框架指导下,深入剖析软件开发生命周期各阶段的安全细节问题,理解协同构建安全系统的方法。并通过大量的
讲师:陈国星详情
《微服务架构设计与实战》 01.15
《微服务架构设计与实战》企业微服务架构落地实战主讲:陈国星【课程背景】随着互联网时代的到来,数据量急剧增加,并发量也越来越大,传统的单体应用访问起来变得越来越缓慢?企业如何快速的找到应用缓慢的根源并进行快速的优化?企业如何重新规划和设计高可用高并发的分布式系统的架构,而微服务架构已然成为分布式系统架构最主流的实现方案。本课程首先从软件架构的演变历程开始分析,
讲师:陈国星详情
《Java企业应用开发与项目实战》 01.15
《Java企业应用开发与项目实战》立志于快速专向Java企业应用开发主讲:陈国星【课程背景】企业通过校招或社招的新员工如何快速掌握Java开发的技能,进入实际的企业项目开发?企业已有员工想从其它岗位方向如何快速转型Java企业应用开发?本课程采取由浅入深、案例实战驱动理论学习的教学方式,站在一个拥有多年Java开发经验的角度以理论+案例实战的方式带领学员攻克
讲师:陈国星详情
《JVM深入剖析与调优实战》 01.15
《JVM深入剖析与调优实战》快速掌握JVM调优策略和步骤主讲:陈国星【课程背景】随着互联网时代的到来,数据量急剧增加,并发量也越来越大,企业的应用随着上线的时间越来越长,访问起来变得越来越缓慢?企业如何快速的找到应用缓慢的根源并进行快速的优化?而Java企业应用运行在JVM之上,如何通过JVM调优快速提供应用的访问速度和性能?本课程围绕实际的项目中遇到的各种
讲师:陈国星详情
《SpringBoot应用开发与实战》 01.15
《SpringBoot应用开发与实战》Java企业级应用快速开发神器主讲:陈国星【课程背景】微服务架构已然成为了当下最流行的热门话题,并且它已被各种规模的互联网公司广泛接受和认可,而SpringBoot以其极速开发为特点也已成为互联网开发人员必备技术。无论是互联网、云计算还是大数据,Java平台已成为全栈的生态体系,其重要性几乎不可替代。而SpringBoo
讲师:陈国星详情
- [潘文富] 经销商终端建设的基本推进
- [潘文富] 中小企业招聘广告的内容完
- [潘文富] 优化考核方式,减少员工抵
- [潘文富] 厂家心目中的理想化经销商
- [潘文富] 经销商的产品驱动与管理驱
- [王晓楠] 辅警转正方式,定向招录成为
- [王晓楠] 西安老师招聘要求,西安各区
- [王晓楠] 西安中小学教师薪资福利待遇
- [王晓楠] 什么是备案制教师?备案制教
- [王晓楠] 2024年陕西省及西安市最
- 1社会保障基础知识(ppt) 21174
- 2安全生产事故案例分析(ppt) 20258
- 3行政专员岗位职责 19065
- 4品管部岗位职责与任职要求 16242
- 5员工守则 15474
- 6软件验收报告 15414
- 7问卷调查表(范例) 15126
- 8工资发放明细表 14567
- 9文件签收单 14218