大型web构架设计--学习笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zyf837368104/article/details/7610668
大型web构架设计
网络层面+服务器构架+应用层面开发
  • 网站大访问量
  • 偶以前了解的门户网站为啥这么快?负载均衡就是多的IP负载一个域名,而集群是一个IP对多台服务器!
百科显示:服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就象是只有一个服务器 集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行
1.负载均衡技术(用户群体分流,轮询圈)
Cisco(思科) 以太网通道
思科是啥?咱也得了解一下。

  • Windows NLB技术
  • F5等负载均衡器 (思科华为的产品) 以上方案虽然牛,都是要钱的啊!
  • Linux LVS技术(linux virtual server)wiki上显示项目在1998年5月由章文嵩成立,是中国国内最早出现的自由软件项目之一。ca,碉堡了
    • 典型的LVS的结构

2.数据冗余技术(防止单点故障,做数据备份!我们学到的raid!)
    • Cisco HSRP热备份路由 (线路冗余技术,网络层面,多台路由器{虚拟路由器,备份路由器,活跃路由器}) IBMP5(100万)
    • Windows集群技术
    • Linux HA集群技术
    • IBM AIX集群(成本相当高!)
  • 网站大数据存储
1.主流数据库(貌似直接忽略mssql,不是mssql2012刚出来嘛)
  • MySQL主从和分区技术(以前是Sun,被Oracle收购,开源产品)
上次自由软件日,听了淘宝人讲了Oceanbase的讲座。
mysql分库分表
垂直分表 (字段不可能很多,所以大部分压力来自水平)
水平分表 (当字段达到1亿条) 逻辑上一张表,物理上多张表
  • Oracle(一套要上百万)
  • Db2(IBM)
  • NoSQL(非关系型数据库)
    • Mongodb数据库
      • 分布式文件存储,C++编写
网站加速技术
  • 1.Squid代理缓存技术 (反向存储,动静分离)
    • 静态数据(静态页面,图片/flush,css,js)
    • 动态数据(数据库的请求记录)
    • squid cache
  • 2.动态页面静态化缓存
    • 方法一:Apache HTTP服务器的mod_rewrite,基于正则表达式解析器开发的重写引擎
    • 方法二:模板(框架)技术,Smarty模板,thinkphp框架,ZendFrameWork框架,Brophp等(这点重点!)
    • 方法三:Ajax
  • 3.Memcache
    • 高性能分布式内存对象缓存系统,在内存中维护一张巨大的hash表(key,value) ,大大提高读取速度,但是断电了,就会丢失数
  • 4.Sphinx搜索加速
    • 基于SQL的全文搜索引擎,可以结合MySQL,OostgreSQL做全文检索。提供脚本语言API(php,python等)
    • 单一索引可达1亿条,千万级别查询毫秒级。

猜你喜欢

转载自blog.csdn.net/zyf837368104/article/details/7610668