当前位置:js代码下载 >> 新闻中心 >> qq强制聊天新闻 >> 浏览文章
qq强制聊天新闻

高端电商网站qq强制聊天建设架构分析

标签:高端,网站,强制,聊天,建设,架构,分析 发布时间:2019年08月25日 点击3
分享数:45
电商行业技术特点;
①技术新:(NoSql推广首在社区网站qq强制聊天和电商项目),发展快,需求推动技术的革新。

②技术范围广:除了java,像淘宝前端还使用了PHP,数据库MySQL或者oracle,nosql,服务器端使用Linux,服务器安全、体系安全

③分布式:曩昔是在一台机器上做运算,如今是分散到许多机器上,最后汇总起来。(集中式向分布式进行考虑)由需求来推动

④高并发、集群、负载均衡、高可用:由并发题目采用集群进行处理,其中,集群会涉及服务器的主从以及分布题目,使用负载均衡。(权重高低)高可用是对用户而言,用户的服务不停止(体系升级,服务不停止,淘宝每周更新2次)。

⑤海量数据:双11,570亿的背后,订单有多少?欣赏次数有多少?商品会有多少?运动相干数据?

⑥营业复杂:不要简单的认为是:商品展示出来后,加入购物车后购买就完成了。后台分外复杂,比如优惠(包邮、满减)

⑦体系安全:体系上线必须通过体系安悉数门审核通过。前年CSDN数据泄漏。快捷酒店数据泄漏(通过身份证就可以查看你的开房记录)。近几年,安全意识渐渐在提高。


电商网站qq强制聊天需求;

客户需求:

    建立一个全品类的电子商务网站qq强制聊天B2C),用户可以在线购买商品,可以在线付出,也可以货到付款;
    用户购买时可以在线与客服沟通;
    用户收到商品后,可以给商品打分,评价;
    目前有成熟的进销存体系;必要与网站qq强制聊天对接;
    盼望能够支撑3~5年,营业的发展;
    预计3~5年用户数达到1000万;
    定期举办双11,双12,三八男人节等运动;
    其他的功能参考京东或国美在线等网站qq强制聊天。

客户就是客户,不会告诉你详细要什么,只会告诉你他想要什么,我们许多时候要指导,发掘客户的需求。好在提供了明确的参考网站qq强制聊天。因此,下一步要进行大量的分析,结合行业,以及参考网站qq强制聊天,给客户提供方案。

需求功能矩阵

需求管理传统的做法潍坊做网站,会使用用例图或模块图(需求列表)进行需求的描述。如许做常常忽视掉一个很紧张的需求(非功能需求),因此保举大家使用需求功能矩阵,进行需求描述。

图片存储的要求(海量小图片)用户可以在线购买商品会员管理,购物车,结算功能优秀购物体验(可用性,性能)在线付出或货到付款多种在线付出体例付出过程要安全,数据加密(安全性)多种付出接口天真切换(天真性,扩展性)可以在线与客服沟通在线客服功能可靠性:即时通信商品打分评价商品评论 目前有成熟的进销存体系对接进销存属于束缚条件对接时要考虑数据同等性,鲁棒性支撑3~5年,营业的发展 属于束缚条件伸缩性,可扩展性3~5年用户数达到1000万 束缚条件举办双11,双12,三八男人节等运动运动管理,秒杀突增访问流量(可伸缩)实时性要求(高性能)参考京东或国美在线 参考条件

以上是对电商网站qq强制聊天需求的简单举例,目的是说明(1)需求分析的时候,要周全,大型分布式体系重点考虑非功能需求;(2)描述一个简单的电商需求场景,使大家对下一步的分析设计有个依据。

、网站qq强制聊天初级架构

一样平常网站qq强制聊天,刚开始的做法,是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件体系。

这是前几年比较传统的做法关键词排名,之前见到一个网站qq强制聊天10万多会员,垂直服装设计门户,N多图片。使用了一台服务器部署了应用,数据库以及图片存储。出现了许多性能题目。

如下图:

但是,目前主流的网站qq强制聊天架构已经发生了翻天覆地的转变。一样平常都会采用集群的体例,进行高可用设计。至少是下面这个样子。

(1)       使用集群对应用服务器进行冗余,实现高可用;(负载均衡设备可与应用一块部署)

使用数据库主备模式,实现数据备份和高可用;
、体系容量预估

预估步骤:

    注册用户数-日均UV量-每日的PV量-天天的并发量;
    峰值预估:寻常量的2~3倍;
    根据并发量(并发,事务数),存储容量计算体系容量。

客户需求:3~5年用户数达到1000万注册用户;

每秒并发数预估:

    天天的UV为200万(二八原则);
    每日天天点击欣赏30次;
    PV量:200*30=6000万;
    集中访问量:24*0.2=4.8小时会有6000万*0.8=4800万(二八原则);
    每分并发量:4.8*60=288分钟,每分钟访问4800/288=16.7万(约等于);
    每秒并发量:16.7万/60=2780(约等于);
    假设:岑岭期为寻常值的三倍,则每秒的并发数可以达到8340次。
    1毫秒=1.3次访问;

没好好学数学忏悔了吧?!(不知道以上算是否有错误,呵呵~~)

服务器预估:(以tomcat服务器举例)

    按一台web服务器,支撑每秒300个并发计算。寻常必要10台服务器(约等于);[tomcat默认配置是150]
    岑岭期:必要30台服务器;

容量预估:70/90原则

体系CPU一样平常维持在70%左右的水平,岑岭期达到90%的水平,是不虚耗资源,并比较稳固的。内存,IO类似。

以上预估仅供参考,由于服务器配置,营业逻辑复杂度等都有影响。在此CPU,硬盘,网络等不再进行评估。

网站qq强制聊天架构分析

根据以上预估,有几个题目:

    必要部署大量的服务器,岑岭期计算,可能要部署30台Web服务器。并且这三十台服务器,只有秒杀,运动时才会用到,存在大量的虚耗。
    所有的应用部署在统一台服务器,应用之间耦合紧张。必要进行垂直切分和水平切分。
    大量应用存在冗余代码
    服务器SESSION同步耗费大量内存和网络带宽
    数据必要频繁访问数据库,数据库访问压力伟大。

大型网站qq强制聊天一样平常必要做以下架构优化优化是架构设计时,就要考虑的,一样平常从架构/代码级别解决,调优重要是简单参数的调整,比如JVM调优;假如调优涉及大量代码改造,就不是调优了,属于重构):

    营业拆分
    应用集群部署(分布式部署,集群部署和负载均衡)
    多级缓存
    单点登录(分布式Session)
    数据库集群(读写星散,分库分表)
    服务化
    新闻队列
    其他技术

网站qq强制聊天架构优化
1营业拆分

根据营业属性进行垂直切分,划分为产品子体系,购物子体系,付出子体系,评论子体系,客服子体系,接口子体系(对接如进销存,短信等外部体系)。

根据营业子体系进行等级定义,可分为核心体系和非核心体系。核心体系:产品子体系,购物子体系,付出子体系;非核心:评论子体系,客服子体系,接口子体系。

营业拆分作用:提拔为子体系可由专门的团队和部门负责,专业的人做专业的事,解决模块之间耦合以及扩展性题目;每个子体系单独部署,避免集中部署导致一个应用挂了,悉数应用不可用的题目。

等级定义作用:用于流量突发时,对关键应用进行珍爱,实现优雅降级;珍爱关键应用不受到影响。
2应用集群部署(分布式,集群,负载均衡)

分布式部署:将营业拆分后的应用单独部署,应用直接通过RPC进行长途通讯;

集群部署:电商网站qq强制聊天的高可用要求,每个应用至少部署两台服务器进行集群部署;

负载均衡:是高可用体系必须的广州双壁波纹管,一样平常应用通过负载均衡实现高可用,分布式服务通过内置的负载均衡实现高可用,关系型数据库通过主备体例实现高可用。

3 多级缓存

缓存按照存放的位置一样平常可分为两类本地缓存和分布式缓存。本案例采用二级缓存的体例,进行缓存的设计。一级缓存为本地缓存,二级缓存为分布式缓存。(还有页面缓存,片段缓存等,那是更细粒度的划分)

一级缓存,缓存数据字典,和常用热点数据等基本不可变/有规则转变的信息,二级缓存缓存必要的所有缓存。当一级缓存过期或不可用时,访问二级缓存的数据。假如二级缓存也没有,则访问数据库。

缓存的比例,一样平常1:4,即可考虑使用缓存。(理论上是1:2即可)。

4,单点登录(分布式Session)

体系分割为多个子体系,自力部署后,不可避免的会碰到会话管理的题目。一样平常可采用Session同步,Cookies,分布式Session体例。电商网站qq强制聊天一样平常采用分布式Session实现。

再进一步可以根据分布式Session,建立完美的单点登录或账户管理体系

流程说明

    用户第一次登录时,将会话信息(用户Id和用户信息),比如以用户Id为Key,写入分布式Session;
    用户再次登录时,获取分布式Session,是否有会话信息,假如没有则调到登录页;
    一样平常采用Cache中心件实现,建议使用Redis,因此它有持久化功能,方便分布式Session宕机后,可以从持久化存储中加载会话信息;
    存入会话时,可以设置会话保持的时间,比如15分钟,超过后主动超时;

结合Cache中心件,实现的分布式Session,可以很好的模仿Session会话。


数据库集群(读写星散,分库分表)

大型网站qq强制聊天必要存储海量的数据,为达到海量数据存储,高可用,高性能一样平常采用冗余的体例进行体系设计。一样平常有两种体例读写星散和分库分表。

读写星散:一样平常解决读比例宏大于写比例的场景,可采用一主一备,一主多备或多主多备体例。

本案例在营业拆分的基础上,结合分库分表和读写星散

    营业拆分后:每个子体系必要单独的库;
    假如单独的库太大,可以根据营业特征,进行再次分库,比如商品分类库,产品库;
    分库后,假如表中稀有据量很大的,则进行分表,一样平常可以按照Id,时间等进行分表;(高级的用法是同等性Hash)
    在分库,分表的基础上,进行读写星散;

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


电商网站qq强制聊天后台功能模块分析;

后台:各类重要信息的概要统计,包括客户信息、 订单信息、商品信息、库存信息、评论和最近反馈等。 

商品模块: 

 1.商品管理:商品和商品包的添加、修改、 删除、复制、批处理、商品计划上下架、SEO、商品多媒体上传等,可以定义商品是实体照旧假造,可以定义是否预订、是否缺货贩卖等。

2.商品目录管理:树形的商品目录组织管理,并可以设置关联/商品保举。   

3.商品类型管理:定义商品的类型,设置自定义属性项、SKU项和商品评论项。  

4.品牌管理:添加、修改、删除、上传品牌 LOGO。   

5.商品评论管理:回复、删除。
贩卖模块: 

  1.促销管理:分为目录促销、购物车促销和 优惠券促销三类,可以随意定义不同的促销规则,知足日常促销运动:购物扣头、购物奉送积分、购物奉送优惠券、购物免运输费、特价商品、特定会员购买特定商品、折上折、买二送一等。   2.礼券管理:添加、发送礼券 

  3.关联/保举管理――基于规则引擎,可以支撑多种保举类型,可手工添加或者主动评估商品。

订单模块: 

  1.订单管理:可以编辑、解锁、取消订单、 拆分订单、添加商品、移除商品、确认可备货等,也可对因促销规则发生转变引起的价格转变进行调整。订单处理完可提议退货、换货流程。 

  2.付出:常用于订单付出信息的查看和手工 付出两种功能。手工付出订单,常用于“款到发货”类型的订单,可理解为对款到发货这类订单的一种补登举动。 

  3.结算:提供商家与第三方物流公司的结算 功能,通常是月结。同时,结算功能也是常用来对“货到付款”这一类型订单付出后的数据进行对帐

库存模块: 

  1.库存管理:引入库存的概念,不包括贩卖 规则为永久可售的商品,一个SKU对应一个库存量。库存管理提供增长、削减等调整库存量的功能;另外,也可对具详细的SKU设置商品的保留数量、***小库存量、再进货数量。每条SKU商品的详细库存操作都会记录在库存明细记录里边。

2.查看库存明细记录。 

  3.备货/发货:创建备货单、打印备货单、打印发货单、打印EMS快递单、完成发货等一系列物流配送的操作。 

  4.退/换货:对退/换货的订单进行收货流程的处理。

内容模块: 

  1.内容管理:包括内容管理以及内容目录管理。内容目录由树形结构组织管理。类似于商品目录的树形结构,可设置目录是否为链接目录。   

2.无穷制创建自力内容网页,比如关于我们,联系我们。 

   3.广告管理:添加、修改、删除、上传广告、 定义广告有用时限。 

4.可自由设置商城导航栏目以及栏目内容、栏目链接。

客户模块: 

  1.客户管理:添加、删除、修改、重设密码、 发送邮件等。   2.反馈管理:删除、回复。 

  3.新闻订阅管理:添加、删除、修改新闻组 和新闻、分配新闻组、查看订阅人。   4.会员资格:添加、删除、修改。

体系模块: 

  1.安全管理:管理员、角色权限分配和安全日志 

  2.体系属性管理:用于管理自定义属性。可关联模块包括商品管理、商品目录管理、内容管理、客户管理。

3.运输与区域:运输公司、运输体例、运输 地区。   4.付出管理:付出体例、付出历史。   5.包装管理:添加、修改、删除。 

  6.数据导入管理:商品目录导入、商品导入、 会员资料导入。   7.邮件队列管理:监控邮件发送情况,删除 发送非常邮件。

报表模块: 
  缺省数个统计报表,支撑时间段过滤、支撑按不同状况过滤、支撑HTML、PDF和Excel格式的导出和打印。   1.用户注册统计   2.低库存汇总   3.缺货订单   4.订单汇总   5.退换货



TAG标签耗时:0.01432204246521 秒