前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >京东商城“商品详情”大概一分钟不可用,我懵了

京东商城“商品详情”大概一分钟不可用,我懵了

作者头像
35岁程序员那些事
发布2022-09-23 17:40:35
4370
发布2022-09-23 17:40:35
举报

小Q今天晚上打开京东商城的PC端首页,挑选几本自己比较喜欢的技术类书籍(比如Spring Cloud Alibaba微服务架构实战派(上下册)),并查看商品详情时,发现商品详情中的商品属性值都丢失了。凭借小Q多年的电商经验,立马反应过来,去查看手机端的同一个商品的商品详情,发现手机端是正常的。小Q还特意去验证了多个商品,发现不同品牌和类目的商品,在PC端都打不开详情。顿时我就在想,京东商品团队的程序员,2022年第一季度的绩效会很差了。

这就是程序员的生活,作为程序员总希望自己的技术有用武之地,但是又很害怕出现这种技术故障,虽然故障多出几次,老板就会多重视一下技术,并投入资源去升级技术,但是谁也不想做第一个吃螃蟹的人,因为过来人都知道,第一个吃螃蟹的人,都会过的很苦。

本文只是刚好碰到了“京东商城商品详情一分钟不可用的技术故障”,目前已经恢复,只是拿这个场景探讨技术,没有其它目的。

为什么会出现“手机端商品详情可用”而“PC端商品详情不可用”的现象

在电商服务中,如果流量非常大,并为了提高访问商品的速度,一般我们会做如下技术优化:

  • 引入分布式缓存,比如Redis;
  • 将商品信息存储在Redis中,并利用Redis的高性能的特性,提高访问商品的速度;
  • 为商品服务自建一个独立的Redis集群,通过缓存隔离,进一步的提升性能;
  • 用CDN缓存商品详情页的静态数据,并使用CDN加速,提前将这些静态数据传输到用户就近的CDN节点上;
  • 隔离热点商品和普通商品,并提前预热热点缓存;
  • 隔离手机端商品缓存流量和PC端商品缓存流量,针对不同类型的流量,采用不同的高可用技术手段。

好吧,为了提升性能,技术人员可以隔离手机端和PC端的访问商品的流量,同理也会隔离其它高流量的服务,比如交易服务和订单服务等,那么隔离流量的原因是什么呢?主要包括如下:

  • 手机端的流量要远大于PC端的流量,这个是不争的事实(毕竟我们现在已经进入智能手机时代);
  • 京东APP访问的后端的一系列的服务(包括交易服务、订单服务、商品服务等)可以用最好的机器,集群中服务节点数可以更多,相反PC端对应的后端服务的机器以及集群节点数就要偏少一点。

这样我们就不难理解,为什么会出现“手机端商品详情可用”而“PC端商品详情不可用”的现象。

如何隔离流量

隔离流量的技术手段有很多,主要包括如下方式:

  • 用网关隔离入口流量,当然这里的网关可以有很多种,比如路由器、负载均衡器(Nginx)以及业务网关(比如Spring Cloud Gateway);
  • 用服务治理,从微服务层隔离流量,比如治理Dubbo服务并隔离流量;
  • 全链路流量隔离,比如通过一个全局唯一ID(手机端和PC端规则不一致),来识别流量,这样不仅从服务的角度来隔离流量,而且从中间件和存储设备的角度去隔离流量。

总结

本文从生活中一次普通的购物经历,去联想到一些技术问题,希望给大家一些借鉴和帮助。

大家好我是小Q,今天我来和大家继续聊聊“Spring Cloud Alibaba”。

小Q和博文视点学院合作,会采用录制加直播的模式,给书友分享技术以及一些学习路径的心得。

小Q最后告诉大家,大厂不一定好,适合自己才是王道。 知识输出是笔者的初衷,借助知识输出,能够认识更多的牛人,能够和牛人沟通,也是自己技术提升的一个机会。


下一期:几张图搞定Spring Cloud Alibaba配置中心的架构原理


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-02-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 架构随笔录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档