ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?

2020-04-18 15:00:12  阅读:244  来源: 互联网

标签:缓存 架构 隔离 并发 队列 JD 亿级 架构师 超时


JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


你们知道淘宝,京东这些购物商场吗?他们到了双11,双12为什么能支持全国14亿人口同时购物下单呢,因为他们的程序做到了高并发、高性能、高可用。那么你对程序员的三高了解多少呢?

高并发指标有哪些?

  1. 响应时间:系统对进来的请求反应的时间,比如你打开一个页面需要1秒,那么这1秒就是响应时间

  2. 吞吐量:吞吐量是指每秒能处理多少请求数量,好比你吃饭,每秒能吃下多少颗米饭。

  3. 秒查询率:秒查询率是指每秒响应请求数,和吞吐量差不多。

  4. 并发用户数:同时承载正常使用系统功能的用户数量。例如一个即时通讯系统,同时在线量一定程度上代表了系统的并发用户数。

什么是高性能呢?

高性能是指程序处理速度非常快,所占内存少,cpu占用率低。高性能的指标经常和高并发的指标紧密相关,想要提高性能,那么就要提高系统发并发能力,两者互相捆绑在一起。应用性能优化的时候,对于计算密集型和IO密集型还是有很大差别,需要分开来考虑。还有可以增加服务器的数量,内存,IO等参数提升系统的并发能力和性能,但不要浪费资源,要考虑硬件的使用率最高才能发挥到极致。

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


高可用

高可用通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。高可用注意如果使用单机,一旦挂机将导致服务不可用,可以使用集群来代替单机,一台服务器挂了,还有其他后备服务器能够顶上。或者使用分布式部署项。比如现在redis的高可用的集群方案有: Redis单副本,Redis多副本(主从),Redis Sentinel(哨兵),Redis Cluster,Redis自研。

转发+关注加VX:haolagui521 即可领取《亿级架构流量-高并发如何搭建》实战PDF书籍

概念

1、交易型系统设计的一些原则

1.1.高并发原则

1.2.高可用原则

1.3.业务设计原则

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


高可用

1、负载均衡与反向代理

1.1.upstream配2置

1.2.负载均衡算法

1.3.失败重试

1.4.健康检查

1.5.其他配置

1.6.长连接

1.7.HTTP反向代理示例

1.8.HTTP动态负载均衡

1.9.Nginx四层负载均衡

2、隔离术

2.1线程隔离

2.2进程隔离

2.3集群隔离

2.4机房隔离

2.5读写隔离

2.6动静隔离

2.7爬虫隔离

2.8热点隔离

2.9资源隔离

2.10使用hystrix实现隔离

2.11基于Servlet 3实现请求隔离

3、限流详解

3.1限流算法

3.2应用级限流

3.3分布式限流

3.4接入层限流

4、降级特技

4.1降级预案

4.2自动开关降级

4.3人工开关降级

4. 4读服务降级

4.5写服务降级

4.6多级降级

4.7配置中心

4. 8使用Hystrix实现降级

4. 9使用Hystr ix实现熔断

5、超时与重试机制

5.1 简介

5. 2代理层超时与重试

5.3 Web容器超时

5. 4中间件客户端超时与重试

5. 5数据库客户端超时

5.6 NoSQL客户端超时

5.7业务超时

5. 8前端Aj ax:超时

5.9总结

6、回滚机制

6.1事务回滚

6. 2代码库回滚

6.3部署版本回滚

6.4数据版本回滚

6.5静态资源版本回滚

7、压测与预案

7.1系统压测

7.2系统优化和容灾

7.3应急预案

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


转发+关注加VX:haolagui521 即可领取《亿级架构流量-高并发如何搭建》实战PDF书籍

高并发

1、应用级缓存

1.1缓存简介

1.2缓存命中率

1.3缓存回收策略

1. 4 Java缓存类型

1.5应用级缓存示例

1.6缓存使用模式实践

1.7性能测试

2、HTTP缓存

2.1简介

2.2HTTP缓存

2.3 HTTPC1ient客户端缓存

2.4 Nginx HTTP缓存设置

2. 5 Nginx代理层缓存

2.6一些经验

3、多级缓存

3. 1多级缓存介绍

3. 2如何缓存数据

3.3分布式缓存与应用负载均衡

3. 4热点数据与更新缓存

3.5更新缓存与原子性

3. 6缓存崩溃与快速修复

4、连接池线程池详解

4.1数据库连接池

4.2 HTTFC1ient连接池

4.3线程池

5、异步并发实战

5.1同步阻塞调用

5.2异步Future

5.3异步C&llback

5. 4异步编排CompletableFuture

5. 5异步Web服务实现

5.6请求缓存

5.7请求合并

6、如何扩容

6.1单体应用垂直扩容

6.2单体应用水平扩容

6.3应用拆分

6. 4数据库拆分

6. 5数据库分库分表示例

6. 6数据异构

6.7任务系统扩容

7、队列术

7.1应用场景

7.2缓冲队列

7.3任务队列

7.4消息队列

7. 5请求队列

7.6数据总绑队列

7. 7混合队列

7.8其他队列

7.9 Di sruptor+Redi s队列

7.10下单系统水平可扩展架构

7.11基于Canal实现数据异构

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?

转发+关注加VX:haolagui521 即可领取《亿级架构流量-高并发如何搭建》阿里内部PPT、实战PDF书籍

实战案例

1、构建需求响应式亿级商品详情页

1. 1商品详情页是什么

1. 2商品详情页前端结构

1. 3我们的性能数据

1. 4单品页流里特点

1.5单品页技术架构发展

1.6详情页架构设计原则

1.7遇到的一些坑和问题

1.8其他

2、京东商品详情页服务闭环实践

2.1为什么需要统一服务

2. 2整体架构

2.3一些架构思路和总结

2.4引入Nginx接入层

2.5前端业务逻辑后置

2. 6前端接口服务端聚合

2.7服务隔离

3、使用0penResty开发高性能Web应用

3.1 OpenResty简介

3. 2基于OpenResty的常用架构模式

3. 3如何使用0p enResty开发Web应用

3. 4基于OpenResty的常用功能总结

3.5 -些问题

4、应用数据静态化架构高性能单页Web应用

4. 1整体架构

4. 2数据和模板动态化

4. 3多版本机制

4.4异常问题

5、使用0penResty开发eb服务

5.1 架构

5. 2单DB架构

5.3实现

6、使用0penResty开发商品详情页

6.1技术选型

6.2核心流程

6.3项目搭建

6.4数据存储实现

6.5动态服务实现

6. 6前端展示实现

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


转发+关注加VX:haolagui521 即可领取《亿级架构流量-高并发如何搭建》阿里内部PPT、实战PDF书籍

高性能、高并发、高扩展

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


附送阿里内部学习PPT、PDF

JD架构师告诉你亿级流量架构高性能、高可用、高扩展如何搭建的?


转发+关注加VX:haolagui521 即可领取《亿级架构流量-高并发如何搭建》阿里内部PPT、实战PDF书籍


标签:缓存,架构,隔离,并发,队列,JD,亿级,架构师,超时
来源: https://blog.51cto.com/14455981/2488387

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有