大型网站架构系列:电商网站架构案例(3)

news/2024/5/20 5:11:22/文章来源:https://blog.csdn.net/yazhouren/article/details/50782287
origin: http://www.cnblogs.com/itfly8/p/5009005.html

本文章是电商网站架构案例的第三篇,主要介绍数据库集群,读写分离,分库分表,服务化,消息队列的使用,以及本电商案例的架构总结。

6.5数据库集群(读写分离,分库分表)

大型网站需要存储海量的数据,为达到海量数据存储,高可用,高性能一般采用冗余的方式进行系统设计。一般有两种方式读写分离和分库分表。

读写分离:一般解决读比例远大于写比例的场景,可采用一主一备,一主多备或多主多备方式。

本案例在业务拆分的基础上,结合分库分表和读写分离。如下图:

 

(1)       业务拆分后:每个子系统需要单独的库;

(2)       如果单独的库太大,可以根据业务特性,进行再次分库,比如商品分类库,产品库;

(3)       分库后,如果表中有数据量很大的,则进行分表,一般可以按照Id,时间等进行分表;(高级的用法是一致性Hash)

(4)       在分库,分表的基础上,进行读写分离;

 

相关中间件可参考Cobar(阿里,目前已不在维护),TDDL(阿里),Atlas(奇虎360),MyCat(在Cobar基础上,国内很多牛人,号称国内第一开源项目)。

分库分表后序列的问题,JOIN,事务的问题,会在分库分表主题分享中,介绍。

6.6服务化

         将多个子系统公用的功能/模块,进行抽取,作为公用服务使用。比如本案例的会员子系统就可以抽取为公用的服务。

        

6.7消息队列

         消息队列可以解决子系统/模块之间的耦合,实现异步,高可用,高性能的系统。是分布式系统的标准配置。本案例中,消息队列主要应用在购物,配送环节。

(1)       用户下单后,写入消息队列,后直接返回客户端;

(2)       库存子系统:读取消息队列信息,完成减库存;

(3)       配送子系统:读取消息队列信息,进行配送;

 

目前使用较多的MQ有Active MQ,Rabbit MQ,Zero MQ,MS MQ等,需要根据具体的业务场景进行选择。建议可以研究下Rabbit MQ。

6.8其他架构(技术)

除了以上介绍的业务拆分,应用集群,多级缓存,单点登录,数据库集群,服务化,消息队列外。还有CDN,反向代理,分布式文件系统,大数据处理等系统。

此处不详细介绍,大家可以问度娘/Google,有机会的话也可以分享给大家。

七、架构总结

 

以上是本次分享的架构总结,其中细节可参考前面分享的内容。其中还有很多可以优化和细化的地方,因为是案例分享,主要针对重要部分做了介绍,工作中需要大家根据具体的业务场景进行架构设计。 

以上是电商网站架构案例的分享一共有三篇,从电商网站的需求,到单机架构,逐步演变为常用的,可供参考的分布式架构的原型。除具备功能需求外,还具备一定的高性能,高可用,可伸缩,可扩展等非功能质量需求(架构目标)。

关于负载均衡,业务拆分,集群架构,读写分离,分库分表,服务化,消息队列等常用技术和架构实现,本博客将会推出系列文章,进行介绍。欢迎小伙伴们围观。

分享是快乐的,也是个人成长的过程。文章一般是自己的学习总结,工作经验,不足之处在所难免,请大家指正,共同进步。建立了一个以架构为中心的KK群466097527 ,欢迎大家加入。专注大型分布式网站架构,大数据,架构模式,设计模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_793650.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型分布式网站架构技术总结

origin: http://www.cnblogs.com/itfly8/p/4967966.html本文是学习大型分布式网站架构的技术总结。对架构一个高性能,高可用,可伸缩,可扩展的分布式网站进行了概要性描述,并给出一个架构参考。一部分为读书笔记,一部分…

安装php cms 系统教程,如何安装PHPCMS网站管理系统

帝国CMS技术互助群:540946827 一帮大神带你装逼带你飞!还有漂亮的妹纸陪你玩哦!(一)安装前的预备Phpcms 具备跨平台特性,可以运行于 Linux/FreeBSD/Unix 及微软 Windows 2000/2003 等各种操作系统环境下。我们已在软件中 针对上述…

大型网站架构演变和知识体系

2019独角兽企业重金招聘Python工程师标准>>> 之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的、ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演…

linux日志服务源码,Linux系统下nginx+php实现清理服务器网站日志

本篇文章主要讲述的是在Linux系统下用nginx和php实现清理服务器网站日志,具有一定参考价值,感兴趣的朋友可以了解一下,希望对你能有所帮助。1.清空nginx站点日志的内容(如果删除日志文件,只有重启服务器才能重新生成日志文件进行记…

玛曲seo关键词互点软件_请看!张家港seo关键词优化价格,启销软件

广东无忧云网络科技有限公司为您详细解读XzMLCf张家港seo关键词优化价格的相关知识与详情,跟着时间的推移,页面排名由用户行为、用户交互、用户保举等因素决议,而新页面排名则由相关关键字密度、文章本创性等因素决议。那种影响会渐渐削弱&am…

layui的tab加入其他页面_网站建设费用_网站制作如何让页面更具特色

对于一个页面,毫无特色,是没有办法吸引用户的目光,只有有特色的页面才能吸引更多的用户,才能留住用户,所以页面设计的好坏会直接影响网站用户的体验,在这个网络十分发达的年代,用户没有太多的时…

python爬取电商数据_吴裕雄--天生自然PYTHON爬虫:使用Selenium爬取大型电商网站数据...

用python爬取动态网页时,普通的requests,urllib2无法实现。例如有些网站点击下一页时,会加载新的内容,但是网页的URL却没有改变(没有传入页码相关的参数),requests、urllib2无法抓取这些动态加载的内容,此时…

多平台的网站实现单点登录系统(SSO)的开发思路 让你的会员中心更加统一(参考资料)...

单点登录并不是一个新鲜的玩意儿,比较官方的解释是企业业务整合的解决方案之一,通俗来讲SSO就是一个通用的用户中心,国内比较流行的UCenter就是一套单点登录解决方案。而近期以CSDN明文存储用户密码并泄露用户信息开始的各大网站争先恐后的泄…

报名系统网页导出html,教资报名系统提示网站兼容性怎么办 ie浏览器兼容性操作流程...

教师资格证报名2021年入口已经于1月14日开通,3月13日举行笔试,相信不少考生在报名过程中,遇到兼容性站点添加的问题,报名的浏览器不是IE系列,兼容性站点如何添加呢?为帮助各位考生报考,小编来帮助大家解决…

国外服务器 百度云,百度云加速如何配置网站海外加速

一、纯静态网站加速所谓纯静态网站就是网页全部由HTML纯静态页生成的网页,没有会员注册登陆、在线支付等需要调用数据库的功能。这类网页想要加速很简单,只需要把网页全部缓存至百度云加速节点即可。操作方法如下:1.进入报表下拉的-特定页面规…

java和seo哪个好_seo和java哪个更好

一个seo行业站点,科学的内容制作应该与seo相关,且内容本身是有人搜索的。seo和java哪个更好是有人搜索的语句,且与seo是强相关的,对于站增网来讲,这样的内容再适合不过了。任何一门技术,如果精通&#xff0…

nginx 判断手机端跳转_前后端分离情况下如何做SEO优化?

大家好,我是吉礻羊!前后端分离情况下如何做SEO优化?优化针对这个问题分2个点:1,前后端分离的架构,无法提供搜索引擎可收录的页面,需要搜索引擎蜘蛛拥有执行javascript能力才行,可现实…

网页设计 html鼠标悬停,20个酷炫的鼠标悬停效果的网站设计

原标题:20个酷炫的鼠标悬停效果的网站设计出处:设计之家链接:http://www.sj33.cn/digital/wysj/201706/47570.htmlPixels by Tomer Lernerhttp://tomerlerner.com/Haushttps://www.madeinhaus.com/Canvahttps://www.canva.com/Mainworkshttp:…

Centos 安装GIT 同步发布到网站

之前一直都是用SVN 换了新公司后内部用的是GIT 于是研究一番 发现GIT确实就SVN快很多 于是试着搭建一下 第一步 安装GIT 其实在centos上安装很简单 直接用yum明白 yum install git看下是否安装成功 git --version如果出现版本号证明安装成功 第二部 创建GIT仓库 并发布到网站目…

2016年3月国内网站流量统计5强:搜狗、凤凰网上榜

IDC评述网(idcps.com)03月28日报道:根据中国互联网协会-中国网站排名公布的最新数据显示,截至2016年3月24日,国内网站独立访问量排名前五的是:百度、腾讯网、360搜索、搜狗与凤凰网,如下图。如上…

一个莆田系医院网站提醒的浏览器插件

为什么80%的码农都做不了架构师?>>> 支持一下。源码如下: http://git.oschina.net/wzwahl36/PTHospital.chrome 另外,如果你知道更多莆田医院,可以在源码网站上帮助完善莆田医院信息 转载于:https://my.oschina.ne…

网站安装打包 新建网站[四][文件解压] 上

在新建网站之前,就是要把打包好的项目拷贝一份到IIS指定的路径上,同时,还要为个别目录设置相应的访问权限! 于是就产生了两件事: 1。拷贝-》[这里我是采用RAR打包,然后解压] 2。设置权限 如果是用拷贝方式,…

各种资源网站收集

1.Linux资源 Linux 2.backbonerequirejsbootstrap学习 backbonerequirejsbootstrap backbonerequire.js backbone 3.bootstrap样式 bootstrap 4.angularjs各版本下载AngularJS官网本身采用AngularJS库构建,页面中的AngularJS库通过Google的CDN(内容分发网…

大型网站架构系列:负载均衡详解

面对大量用户访问、高并发请求,海量数据,可以使用高性能的服务器、大型数据库,存储设备,高性能Web服务器,采用高效率的编程语言比如(Go,Scala)等,当单机容量达到极限时,我们需要考虑业务拆分和分…

网站备案的注意事项

客户因网站备案问题困扰许久, 网站备案是否成功关乎到网站能否正常上线,所以各位亲们,在办理公司网站业务的时候,务必做到备案正规化,严格化,细致化。做到这个要注意以下一些方面:一、您的网站…