美文网首页
转:电商系统架构

转:电商系统架构

作者: 一个伪互联网球迷 | 来源:发表于2019-12-27 16:24 被阅读0次

    原作者Tobeachief(CSDN)
    对以往做过的电商项目技术架构做一次总结。
    [toc]

    使用SOA分布式架构的方式去治理电商项目,解决分布式、高并发、高可用、集群、负载均衡等问题。

    image.png image.png

    互联网大型网站项目架构拆分:

    一、前端

    1.资源静态化

    静态化资源就是请求一个url访问一个服务器上面的网页,而且这个网页上的资源基本不会发生变化,所以我们的每次请求其实都是重复请求。

    2.负载均衡

    负载均衡是分布式服务架构设计必须考虑的因素之一,它将请求/数据均匀的平摊到各个操作元件中。

    二、应用服务

    1.业务模块化

    将应用程序根据业务模块进行拆分,使每个模块能够独立运行在服务器上。在发布时,某个模块的问题不会影响到整个应用程序,只需解决出现问题的模块,然后将其发布,是相对粗粒度的服务应用。

    2.服务总线

    所有的应用之间需要连接时,如果应用变多,相对的连接数也会成倍增长,这时需要一个服务总线,将所有的服务接口透明化出来,对于应用于应用之间的连接,只需经过服务总线这个过程,实现1对1的连接。

    3.消息队列

    对于互联网架构异步操作必不可少,使用消息队列可以解决各种操作的同步性,将部分操作变成异步。异步可以防止互联网网站的高峰操作。

    同时消息队列对应用之间进行解耦,应用之间的操作不需要约定,也可以处理相应的操作。

    4.读写分离

    数据库的写比较耗时,而数据库的读效率很高,所以数据库的写操作影响了查询效率。在应用中通过切换数据源实现读写分离。

    5.缓存

    缓存能够减轻数据库访问的一定压力,加快访问速度,是互联网架构中必不可少的元素。

    三、数据库

    1.分库分表

    垂直分表:主要是分散系统负载,让一台机器做的事情变成几台服务器做。

    水平分表:缩小索引区大小,使查找更快。

    分布式系统

    1.分布式的应用和服务

    将应用和服务进行分割,应用和服务模块分布式部署。这样做不仅提高并发访问能力、减少数据库连接和资源消耗,还能使不同

    应用复用服务,利于扩展。

    2.分布式静态资源

    对网站静态资源如JS、CSS、图片资源进行分布式部署,减轻应用服务器负载压力,提高访问速度。
    

    ————————————————
    版权声明:本文为CSDN博主「Tobeachief」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u012627608/article/details/79238031

    相关文章

      网友评论

          本文标题:转:电商系统架构

          本文链接:https://www.haomeiwen.com/subject/typdoctx.html