![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
亿级流量
梦江河
聊聊高并发,数据库,存储
展开
-
亿级流量系统多级缓存架构11 网关
亿级流量系统多级缓存架构11 流量网关流量网关和业务网关流量网关全局性流控日志统计防止 SQL 注入防止 Web 攻击屏蔽工具扫描黑白名单控制业务网关请求接入:作为所有 API 接口服务请求的接入点,管理所有的接入请求;业务聚合:作为所有后端业务服务的聚合点,所有的业务服务都可以在这里被调用;中介策略:实现安全、验证、路由、过滤、流控,缓存等策略,进行一些必要的中介处理;统一管理:提供配置管理工具,对所有 API 服务的调用生命周期和相应的中介策略进行统一管理。开源网关原创 2020-08-05 16:22:07 · 360 阅读 · 0 评论 -
亿级流量系统多级缓存架构10 阿里云实战
亿级流量系统多级缓存架构10 阿里云实战域名购买解析域名的价值域名的价值就像商标一样,体现在你注册一个域名之后,别人就不可以再注册这个域名了,域名的稀缺性就产生了。域名可以买卖,一个域名我注册了,有人也想要的话,我可以选择卖给他。域名没有标准的价格,一般域名越短越好记越有意义,价格越高,但这也不是特别绝对的。十几年前,互联网还不是很发达,能提供域名注册的商家不多,每年的费用也很高。当然,现在是便宜多了, .com一年大概六七十。域名可以买卖,当然可以用来赚钱。域名赚钱也不难,买一些域名,有的域名原创 2020-08-05 16:21:37 · 471 阅读 · 0 评论 -
亿级流量系统多级缓存架构9 -分布式事务 2
亿级流量系统多级缓存架构 -分布式事务 2刚性事物和柔性事物刚性事务:遵循ACID原则,强一致性。柔性事务:遵循BASE理论,最终一致性分布式事务解决方案XA两阶段提交方案数据库实现xa协议,保证事务,mysql oracle等。一阶段提交由单数据源数据库实现,以mysql为例,记录redolog数据库通过redolog完成事务单节点提交简单直观,没有和其他节点的通讯,性能好二阶段提交主要由商业数据库实现,但并不常用,强一致性,性能低增加中间角色,事务管理器,来收集各数原创 2020-08-05 16:21:04 · 199 阅读 · 0 评论 -
亿级流量系统多级缓存架构9-分布式事务
亿级流量系统多级缓存架构9-分布式事务为什么分布式事务?传统事务的基本特性(ACID)mysql中,我们可以使用begin开始事务,rollback回滚事务,commit提交事务redolog 记录变更、undolog回滚Spring中,使用@Transaction标记事务原子性(Atomic)要么全部成功,要么全部失败,没有中间状态一致性(Consistency)指的是在执行事务前后,事务外访问数据的时候,数据是一致的,要么看到的是成功的,要么看到的是失败的结果,不会多任务查询到的数据不原创 2020-08-04 15:44:50 · 148 阅读 · 0 评论 -
亿级流量系统多级缓存架构8-服务降级
亿级流量系统多级缓存架构8-服务降级在高并发场景下,当系统中的一些功能组件出现异常,无法继续提供服务器的时候,为了保证整体系统可用性,可以牺牲一部分功能依旧提供有损服务SLA服务等级定义 SLA(Service Level Agreement)是判定压测是否异常的重要依据。压测过程中,通过监控核心服务状态的 SLA 指标数据,您可以更直观地了解压测业务的状态。SLA则是服务商与您达成的正常运行时间保证。详见https://help.aliyun.com/document_detail/11172原创 2020-08-04 15:44:18 · 211 阅读 · 0 评论 -
亿级流量系统多级缓存架构7-扩容
扩容扩容的原因单体应用 -> 平均硬件与云服务扩容整机硬件整机:IBM、浪潮、DELL、HP等cpuIntel、Amd 单路,双路,四路网卡千兆 -> 万兆内存ECC校验磁盘SCSI HDD(机械)、HHD(混合)、SATA SSD、PCI-e SSD、 MVMe SSD水平扩容复制统一入口 负载均衡系统拆分随着业务的增长,系统变得越来越庞大根据系统功能拆分成独立而又互通的项目比如交易系统、财务系统、生产流程系统、物流系统、网站系统等等拆分完成会发生以原创 2020-08-04 15:43:49 · 135 阅读 · 0 评论 -
亿级流量系统多级缓存架构6
亿级流量系统多级缓存架构6服务限流什么叫限流?Ab测试yum install httpd-tools即限制流量进入缓存,是用来增加系统吞吐量,提升访问速度提供高并发。降级,是在系统某些服务组件不可用的时候、流量暴增、资源耗尽等情况下,暂时屏蔽掉出问题的服务,继续提供降级服务,给用户尽可能的友好提示,返回兜底数据,不会影响整体业务流程,待问题解决再重新上线服务限流,是指在使用缓存和降级无效的场景。比如当达到阈值后限制接口调用频率,访问次数,库存个数等,在出现服务不可用之前,提前把服务降级。只原创 2020-08-04 15:43:04 · 293 阅读 · 1 评论 -
亿级流量系统多级缓存架构5
亿级流量系统多级缓存架构5资源隔离服务降级什么叫资源隔离?服务隔离是指在一个大型系统中,可以把原连接在一起的组件,模块,服务,资源拆分开。那么在系统出现故障的时候,可以隔离故障,阻止传播,不会出现滚雪球和雪崩的效应。隔离的方式主要有线程隔离进程隔离集群隔离机房隔离读写隔离动静隔离爬虫隔离等…线程隔离主要是在多线程环境下,对线程池进行治理,把核心业务和非核心业务分割开。但是在多线程池下,不同线程池中的线程在使用Netty的时候netty本身是负载网络io的框架,想要做到原创 2020-08-04 15:42:15 · 233 阅读 · 0 评论 -
亿级流量系统多级缓存架构4
亿级流量系统多级缓存架构4日志异常控制/错误编码细分异常,多下功夫,功夫不是白费的,有可能一天、一个月、一年一个错误编码也没抛出来,但是一旦出了问题能够急速定位,根本不用看代码。我们永远不能保证系统没有bug,bug可以藏的 很深埋的很久,但我们不怕,因为我们的伏兵也一 直在,你一跳我们立马抓,毫不犹豫。异步异步本身不是什么高深的技术,关键是哪些 业务可以走异步,这更体现架构师的业务理解能力 和综合能力6个999.9999%可用性、数据一致性ACID特性以传统数据库为代表,依然坚守:原原创 2020-08-04 15:41:33 · 228 阅读 · 0 评论 -
亿级流量系统多级缓存架构03- 客户端缓存
《亿级流量系统多级缓存架构3》服务并发化其他缓存客户端浏览器缓存首先,限定在get请求由于浏览器缓存涉及到的应用比较多,所以针对不同的应用和版本效果也会有差异浏览器:chrome服务器:nginx在系统中不常改变的资源上可以使用浏览器缓存,其中在frame下Cache-Control: max-age=2592000ETag: "5d8c4a06-a0fc" Expires: Sat, 26 Oct 2019 15:16:24 GMTETag:http1.1支持在HTTP原创 2020-08-04 15:40:50 · 192 阅读 · 0 评论 -
亿级流量系统多级缓存架构02
《亿级流量系统多级缓存架构2》Lua +课程主要内容Nginx缓存Nginx全局共享内存缓存lua_shared_dict shared_data 1m;------local shared_data = ngx.shared.shared_data local i = shared_data:get("i") if not i then i = 1 shared_data:set("i", i) ngx.say("lazy set原创 2020-08-04 15:39:47 · 767 阅读 · 0 评论 -
亿级流量系统多级缓存架构01
《亿级流量系统多级缓存架构10》Lua +课程主要内容l 多级缓存架构模型l Redis整合Lual 利用Redis+Lua开发分布式锁l Openresty 安装部署l Nginx下lua脚本访问Nginx内核变量l Nginx下利用Lua脚本访问RedisLua 是由巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于1993年开发的一种轻量、小巧的脚本语言,用标准 C 语原创 2020-08-04 15:38:39 · 233 阅读 · 0 评论 -
亿级流量多级缓存架构解决方案
亿级流量多级缓存架构解决方案设计技术点电商项目架构方案对比与高并发瓶颈分析多源异构数据、服务数据闭环客户端过载保护CDN、WAF流量清洗集群、单机限流策略风控防刷策略nginx本地API动态网页内存数据缓存渲染直接输出方案redis多种集群模式优缺点对比、高性能优化、Linux内核优化redis企业级数据恢复灾难演练redis集群10万请求高压测试Cache Aside Pattern方案与缓存数据一致性Nginx proxy_cache lua_shared_dict ngx.s原创 2020-08-04 15:36:48 · 580 阅读 · 0 评论