聊聊秒杀系统的设计(二)

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:fa1c1580-bdf4-46e5-9664-df107c0c72ef

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:ab407a70-17c1-4461-bc40-aaced040e200

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:f79b95cc-ce8f-4c97-be8a-7b0452e0af01

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:5ce9ec4c-a477-472f-93b7-8adec2a408e0

首先,我们要做的就是优化静态数据,那就是通过缓存来提高静态数据的读取可以有效提高数据的访问,除此之外还要考虑将缓存服务根据业务需要放到用户本地或CDN上。如何实现缓存将会在后续提到,我们现在可以认为这里的缓存是一个Redis集群或其他缓存系统。

动态数据主要包括服务端的时间,用户数据等。我常用的方法是通过发起一个Ajax的异步请求,获取动态数据,这样做的缺点是页面存在延迟的话,体验不好。为了解决这个问题,可以通过提前在页面中的动态数据展示部分做一个插槽,类似vue中的slot,缓解数据加载中的突兀感。

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:60d4d491-19ad-48bb-8e8a-c0928dfdcc20

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:21d1ff65-093c-4ba0-9e44-606ab87e6360

这里提到的单机是将缓存在一台性能较高的实体机中进行分组,采用Hash算法。由于商品数量不多,缓存的命中率会大大提高。这既是有点也是缺点,提高命中的同时可能会存在缓存击穿的风险。在访问量较大时,可以通过修改缓存算法或添加相同的缓存分组来缓解。

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:d7737757-4746-4eef-bf43-42acd6ad4563

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:0ed17802-ae9b-4e2f-bdbf-26ff9774fbf2

在一些业务复杂、数据庞大的机构中,可以考虑建立独立的缓存系统,减少运维成本,提高复用。这样做的可以使开发人员将重心放在业务中,不需要考虑缓存数据的处理;同时可以通过zookeeper实现配置自动化;在不同秒杀活动中,共享内存,降低资源浪费。

除此之外,CDN的优化以后也会介绍。

数据处理除了以上提到的动静分离,还需要进行隔离。这么做的原因是不能让秒杀活动影响了其他业务,在秒杀期间减少对其他业务资源的占用。要做到这一点,除了要进行系统隔离,还需要进行数据的隔离,就像我们上一篇中提到的,要有独立的数据存储。实现数据隔离的方式有很多种,可以根据区域划分、可以根据URL划分等。

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:a5cbcce5-a535-4f81-91f1-01da78641eb6

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:849022f0-d769-4d80-9cf5-b4bfce5ac0a6

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:9cfb15e0-0fcd-4947-a48e-96a6502db930

[En]

[TencentCloudSDKException] code:FailedOperation.ServiceIsolate message:service is stopped due to arrears, please recharge your account in Tencent Cloud requestId:30f77912-0f53-4d6e-a4dd-ea755d855bfe

Original: https://www.cnblogs.com/hhhnicvscs/p/16701948.html
Author: 平凡程序猿
Title: 聊聊秒杀系统的设计(二)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/561849/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球