双11购物节,会带来十倍级别流量提升,在技术上有很大挑战,应对挑战过程中能给我们带来更多技术提升,这种提升需要基于对问题不断深入理解,以及通过技术架构设计落地实现来完成。
这次备战花费了团队小伙伴们很多时间精力,每个人都应该详细总结下,总结过程能让我们有更多收获,不然更多是付出了很多辛苦,而没有收获,那会是很大浪费,也对机会是一种浪费。再有就是哪些将那些做的不好的,需要技术手段来提升完善的地方梳理出来。一个重要事情是怎样减少这种花费很多人力方式,能不能搞成自动化,或者通过架构优化来解决性能以及错误等问题。用技术手段而不是堆人力方式。
复盘存储读取,读取本身有比较多监控,遇到问题有几类:
1、通用数据读取热点,数据热点会导致 redis 集群性能下降,这种需要定时去读取来解决。
2、这次备战时遇到新问题,刷子带来热点问题,可以采取缓存来解决。就是服务内存缓存来挡住刷子用户,避免redis产生热点。
3、连接数问题,连接过多会导致连接取不到,a、采取机房分离策略,廊房服务读廊房集群,马驹桥读马驹桥机房,减少连接。b、集群规模减小,数据存的少了,读它的就少了,读的少了,redis客户端客户端减少从而减少连接。c、连接问题通过业务拆分方式解决,单个业务单个集群,集群规模变小,业务之间影响变小,共享集群一个业务导致集群不稳定,其他集群也不稳定。c、小集群业务集群问题不大,还有偏好这种通用数据,读的业务很多,就需要一主多从来解决。
复盘遇到问题,对于存储读取前边做了很多工作,读取方面遇到问题减少了。最近又遇到存储增长问题,有同学设计了一套监控体系,对存储每个任务进行监控,监控后可以设置监控指标,达到指标后进行报警。挺好一种设计,根读取类似都是采取定量方式,清晰定位存储量问题,后续扩容还是构建新的集群就是水到渠成的事。
电商系统稳定关系着核心用户体验,保证稳定方式需要减少外部依赖,所有外部资源都可能会导致问题,减少依赖就能减少出问题的风险。另一条重要原则是后续备案,很重要一件事是要有备选方案出了问题能够有备选供选择。
降级、限流、限速、熔断等都是一种备案。
1、降级是通过降掉非核心流程,保证核心流程稳定高效。或者解决0点流量来临时,存储不稳定,网络不稳定后的处理方式,直接将逻辑降级,不使用。
2、限流,单个服务单个容器能够处理的量是有限的,单机压出上限后,增加限流google guava包有相应方法,直接用即可。
3、熔断,服务直接返回状态给客户端,客户端不再请求服务,从而保护服务,此时服务不是全的,但是不影响用户体验。
再有就是服务出现问题时,要第一时间降级操作,不要想着去解决问题,因为解决问题会耽误时间,影响用户体验,需要后续去定位问题,这是很重要一点,教过学费的。
架构设计,监控是一种重要架构哲学,对于系统优化一个前提,监控本身也能对整个系统所处状态进行呈现,作为我们的决策依据。
花费人力去盯的地方,都应该想一下怎样通过架构以及设计来解决,更多自动化去做,减少人力,用技术方式解决问题,这应该是我们应当追求的。
备案也是一种重要设计哲学,做到有备无患,不能只能看着系统崩溃而束手无策。事情一定要进行总结,才能在这件事中获得更多信息,不然更多是经过,事情要想办法去把它做好,是将来做任何事情一种很重要方式、方法。
解决技术问题,应该通过好的策略好的架构来实现。解决问题过程中我们获得技术提升。
以上所述就是小编给大家介绍的《双 11 架构设计》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 架构设计(7)——如何设计一个架构
- 架构设计(8)—高可用架构设计
- 【架构设计的艺术】Kafka如何通过精妙的架构设计优化JVM GC问题?【石杉的架构笔记】
- 架构设计笔记(八):详细方案设计
- 微服务架构设计之领域驱动设计
- 架构设计模式—6大设计原则
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Smashing Book
Jacob Gube、Dmitry Fadeev、Chris Spooner、Darius A Monsef IV、Alessandro Cattaneo、Steven Snell、David Leggett、Andrew Maier、Kayla Knight、Yves Peters、René Schmidt、Smashing Magazine editorial team、Vitaly Friedman、Sven Lennartz / 2009 / $ 29.90 / € 23.90
The Smashing Book is a printed book about best practices in modern Web design. The book shares technical tips and best practices on coding, usability and optimization and explores how to create succes......一起来看看 《The Smashing Book》 这本书的介绍吧!