![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高并发场景
文章平均质量分 83
西木风落
多年开发经验,专业、高效,致力于更好的自己
展开
-
高并发场景设计(三)——服务限流
为什么要服务限流对于分布式高并发场景下,通过应用缓存和服务降级,能够应对很大部分并发量突增的情景,为什么还要服务限流呢?对于一些稀缺资源(秒杀、抢购)、写服务(如评论、下单)、频繁的复杂查询(评论的最后几页)等,缓存和降级并不能完全解决,需有一种手段来限制这些场景的并发/请求量,即限流。限流的目的是通过对并发访问/请求进行限速,或者一个时间窗口内的的请求进行限速,一旦达到限制速率则可以拒绝...原创 2018-11-25 22:51:19 · 457 阅读 · 0 评论 -
高并发场景基本介绍
高并发场景下的作弊与反作弊手段对于秒杀或者抢购等的海量请求,其实有很大一部分属于不正当的请求。不少用户,为了抢到“商品”,可能会采用一些类似刷票软件的工具,或者自己制作自动请求脚本,短时间发送大量的请求到后端服务,这些都属于作弊手段。有作弊,肯定就会有反作弊,长江的一些场景如下:1、同一个帐号,一次性发送大量请求。这些请求如果没有被处理,就会造成系统的数据请求的破坏,甚至导致一些逻辑被...原创 2018-11-25 00:11:58 · 3781 阅读 · 0 评论 -
高并发场景设计(二)——服务降级
什么是服务降级服务降级是当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易的能正常运行。服务降级主要用于当整个微服务架构整体的负载超出了预设的上限阈值或即将到来的流量预计将会超过预设的阈值时,为了保证重要或基本的服务能正常运行,将一些 不重要 或 不紧急 的服务或任务进行服务的 延迟使用 或 暂停使用。...原创 2018-11-25 16:24:53 · 1193 阅读 · 0 评论 -
高并发场景设计(一)缓存设计
什么是缓存缓存的定义:用于存储数据的硬件或软件的组成部分,以使得后续更快访问相应的数据。典型的应用场景:有cpu cache, 磁盘cache等。缓存的使用随着客户端请求量的增加,以及服务对响应时间要求的提升,单纯的依赖数据库DB已不能满足需求,尤其是对于多读写少的场景,可以将一部分数据存入缓存,利用内存读写的速度远远高于磁盘或者DB的读写速度,提升系统整体的吞吐量。缓存的设计常遇...原创 2018-12-04 23:11:09 · 672 阅读 · 0 评论 -
高并发下文章点击量设计
游客或者会员在点击文章的时候,需要对文章的点击量做一个计数统计。考虑到点击量计数的准确性,有以下几个需求:用户可以不需要登录 每当用户点击文章的详情页面,这个文章的点击量+1 用户能实时看到文章点击量,也就是用户点击后能及时看到+1 点击量最终保存在数据库中,最终一致性 作者在后台编辑文章然后保存时,如果这期间有点击量的增加,保存文章时不能覆盖掉这段时间的增量 需要对用户去重处理,也...原创 2019-01-13 19:08:39 · 2807 阅读 · 0 评论 -
全链路压测
1、为什么要全链路压测有时候,单个系统的也测并不能准确的表达出全链路的性能,尤其是QPS 比较高的场景;如果不进行全链路压测,只要链路中一个系统挂掉,就会引起整个链路的崩溃。全链路压测,一方面能够各个服务知道自己的承压极限在哪;另一方面,让各个系统能够明确优化目标并找出性能瓶颈,同时对于一些特殊环节可以通过临时增加公有云的方式来提高整体的性能;2、全链路压测的难题1) 涉及的系统太多,...原创 2019-02-22 14:04:39 · 3182 阅读 · 3 评论 -
Http 长连接、短连接、长轮询、短轮询、webSocket
一、长连接、短连接在Http 1.0的时候,规定客户端与服务器只会保持短暂的连接,浏览器每次请求数据都要建立一个连接,服务器完成请求后立即断开TCP连接。在Http 1.1后,支持持续连接,在请求关闭连接前客户端与服务端都保持连接,实质是保持这个通信管道,之后便可以对其进行复用。HTTP的长连接和短连接,本质上都是说的TCP连接。TCP连接是一个双向的通道,它是可以保持一段时间不关闭的...原创 2019-05-07 22:15:53 · 719 阅读 · 0 评论