以前看的一本书淘宝这十年来,一起回顾下电商系统的发展历程,其实也折射了目前很多系统技术发展的变革 。从单机版到目前淘宝的技术状态 。
文章插图
(一)目的
- 一起了解学习的分布式专题技术可以串起来 。
- 2.了解电商系统相关的技术知识 。
- 3.面试,工作可以应用到 。
图有点长,网上找的但是如果要做这个系统老费劲了 。体力活 。美国,苏宁,京东电商大型网站都是上万人研发 。可见系统的庞大 。
文章插图
文章插图
(三)系统的历史
- 淘宝第一版--个人网站
LAPM 【linux+apche+php+MySQL】
文章插图
文章插图
- 1.JAVA早期的电商网站
多个模块在一个系统中,通过jdbc的访问同一个数据库 。
文章插图
存在的问题,随着流量越来越大,数据库查询速度慢,系统反应慢等等,单机的性能瓶颈 。
- 2.java电商网站,引入集群
加机器的方式解决,集群的方式来解决 。
文章插图
存在的问题,访问的那台机器是不知道的 。
- 3.java电商网站,引入负载
增加负载的方式,分为硬负载f5,软负载Nginx 。
文章插图
存在的问题,第一次访问的机器是A机器,第二次因为负载了访问了B机器 。
- 4.java电商网站,负载后,请求的4种解决方案 。
(1)hash的方式,通过请求IP的hash值绑定要请求的服务器 。
文章插图
存在的问题,abc每次请求都发A机器,这个就是受单点的问题,如果A机器挂了,abc的请求得不到转向,一直请求A机器,用户一直访问不了,一直报错 。
(2)session的复制,通过A和B机器进行相互的session复制
文章插图
存在的问题,Tomcat广播的形式,造成资源的浪费,100万用户在线,等于每个tomcat里面都有100万的用户session的信息,对系统的浪费承诺很大 。适用于小型网站 。
(3)基于cookie的方式,cookie包含session的数据
解决了上面session复制,资源的浪费,服务端的压力的问题 。
文章插图
存在的问题,数据不安全的问题,用户数据的都在客户端,存在破解的可能 。手机一般都使用这种cookie的方式,手机都是单独自己使用的,不存在公共部分 。
(3)session集中存储的方式,加入redis或者其他中间件
文章插图
存在的问题,相比前集中增加了redis中间件,增加了运维和开发的成本 。如果用户量非常大,用中间件的方式也是可用性非常高的 。
- 5.java电商网站,数据库原来一个应用一个数据库,需要集群数据库用同一个 。
文章插图
5.java电商网站,数据库分读写,解决高并发读写的问题,master和slave流量的问题 。
推荐阅读
- Linux怎么克隆系统?备份系统跟Windows系统有区别吗?
- 湖南宜章县长泡茶 带动茶叶电商销量上涨210%
- 在线加密解密工具 md5免费解密
- 霍尼韦尔将设立无人驾驶航空系统业务部门
- 网站|将有300多万人落榜 考研调剂系统6日开通:“研招网”崩了上热搜
- 抖音小店如何成为电商草根,创业就业新风口向
- 抖音直播运营方法论
- 讲透全流程+落地细节 如何从0-1搭建抖音电商团队?
- iPhone系统容量占用太多 教你几个清理方法来释放
- 小米推出全新 MiSans 字体:MIUI13 系统内置,全社会可免费商用