redis学习-4-阿里巴巴中文站架构发展历程

1.10 阿里巴巴中文站架构发展历程

在这里插入图片描述##### 1.10.1 第五代网站架构

  • 第四代网站架构解决了

    • 性能和海量数据问题
      • 大规模的Memcached集群,高性能应用服务器升级,KV,CDN,一定程度解决了网站的性能问题
      • 数据切分和分布式存储解决了网站海量数据的问题。
    • 安全问题
      • 镜像站解决了网站的灾备问题
      • 网站框架的安全特性升级透明的过滤了常见的网站安全漏洞,但到了2010年底,却不得开始实施第五代网站架构改迨
  • 第五代网站架构的使命
    在这里插入图片描述

  • 方案落地:
    在这里插入图片描述##### 1.10.2 数据层面

  • 面临挑战:多数据源多数据类型的存储问题
    在这里插入图片描述
    在这里插入图片描述

  • 页面数据分析拓展:

----一个简单地网页背后的技术一定不是大家所想的那么简单!

1、商品的基本信息
    名称、价格、出厂日期、商家信息:
    关系型数据库就可以解决了!MySQL/Orac1e(拓展:淘宝早年就去I0E了!~王坚:推荐文章:阿里云的这群疯子:40分钟重要!)
    淘宝内需的MySQL不是大家用的MySQL,mysql组件化集成,可以热拔插

	为何去IOE:2008年,王坚加盟阿里巴巴成为集团首席架构师,即如今的首席技术官。这位前微软亚洲研究院常务副院长被马云定位为:将帮助阿里巴巴集团创建世界级的技术团队,并负责集团技术架构以及基础技术平台搭建。
	在加入阿里后,带着技术基因和学者风范的王坚就在阿里巴巴集团提出了被称为“去IOE”(在IT建设过程当中,去除IBM小型机、Oracle数据库及EMC存储设备)的想法,并开始把云计算的本质,植入阿里IT基因。
	王坚这样归纳“去IOE”运动和阿里云之间的关系:“去IOE”完全改变了阿里集团IT架构的基础,是阿里拥抱云计算,产出计算服务的基础。“去IOE”的本质是分布化,让随处能够买到的Commodity PC架构成为可能,使云计算可以落地的首要条件。
	
2、商品的描述、详情、评价信息(多文字类)
	多文字信息描述类,IO读写性能变差
	文档型数据库中,MongoDB
	
3、商品的图片
	商品图片展现类
	分布式文件系统FastDFS
	-淘宝自己的	 TFS
	-Gooa1e     GFS
	-Hadoop		HDFS
	-阿里云的	  OSS
	-七牛云

4、商品的关键字(搜索)
	-搜索引擎solr elasticsearch
	-淘宝ISerach(多隆)
	
5、商品的波段性的热点高频信息
	-内存数据库
	- Redis 、Tair、Memcache...
	
6、商品的交易、价格计算、积分累计,外部的支付接口
	-外部系统,调三方应用
	-支付宝

总结:大型互联网应用(大数据、高并发、多样数据类型)的难点和解决方案

  • 难点

    • 数据类型多样性
    • 数据源多样性和变化重构
    • 数据源改造而数据服务平台不须要大面积重构
  • 解决办法

    • EAI和统一数据平台服务
    • 阿里、淘宝:UDSL
  • UDSL解决方案:(门面模式+策略模式)
    在这里插入图片描述
    在这里插入图片描述

  • NoSQL数据模型简介:以一个电商客户、订单、订购、地址模型来对比下关系型数据库和非关系型数据库,传统的关系型数据库如何设计?

    • ER图(1:1/1:N/N:N,主外键等常见)
      在这里插入图片描述
  • NoSQL如何设计:什么是BSON:BSON()是一种类json的一种二进制形式的存储格式,简称Binary JSON,它和JSON同样,支持内嵌的文档对象和数组对象
  • BSON数据模型面

{
 "customer":{
   "id":1136,
   "name":"Z3",
   "billingAddress":[{"city":"beijing"}],
   "orders":[
    {
      "id":17,
      "customerId":1136,
      "orderItems":[{"productId":27,"price":77.5,"productName":"thinking in java"}],
      "shippingAddress":[{"city":"beijing"}]
      "orderPayment":[{"ccinfo":"111-222-333","txnid":"asdfadcd334","billingAddress":{"city":"beijing"}}],
      }
    ]
  }
}
  • 二者对比,问题和难点
    • 为何上述的状况能够用聚合模型来处理
      • 高并发的操做是不太建议有关联查询的,互联网公司用冗余数据来避免关联查询
      • 分布式事务是支持不了太多的并发的
    • 启发:想想关系模型数据库如何查?若是按照新设计的BSon,是否是查询起来很方便
  • 性能优化
    在这里插入图片描述在这里插入图片描述##### 1.10.3 业务层面

  • 问题1:
    在这里插入图片描述

  • 解决方案:
    在这里插入图片描述

在这里插入图片描述

  • 问题二:
    在这里插入图片描述
  • 解决方案:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
1.10.4 展现层面
  • 问题:
    在这里插入图片描述
    在这里插入图片描述

  • 解决方案:
    在这里插入图片描述

  • 用户体验优化:
    在这里插入图片描述

    • 前端优化:前端资源的版本控制,资源合并,如独角兽设计
      在这里插入图片描述
      在这里插入图片描述
      请添加图片描述
  • 小结:在这里插入图片描述
    在这里插入图片描述

  • 以上都是NoSQL入门概述,不仅能够提高大家的知识,还可以帮助大家了解大厂的工作内容!

下一篇:redis学习-5-Redis介绍与安装
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值