博客列表 >网站架构

网站架构

莫名的博客
莫名的博客原创
2018年02月13日 20:44:41872浏览

大型网站常见问题:

1.大访问量

2.大存储量

3.访问速度

4.网站服务监控


1.大访问量

解决:负载均衡和冗余技术

负载均衡分类:

1)基于网络的负载均衡:Cisco的以太网通道(交换机之间连接多条线)

2)基于服务器的负载均衡

基于网络的负载均衡:

1)Cisco的以太网通道(交换机之间连接多条线)

2)f5负载均衡,一台交换机使用nat(地址转换技术)进行服务器的轮询

基于服务器的负载均衡:

1)lvs nat技术

2)ip-tum 技术

3)dr技术


2.大存储量

解决:

1)服务器的主从:主服务器负责写,从服务器负责读。

2)分库分表:垂直分表(多表少字段原则),水平分表:大记录量分成多个表分表存储。

3)分区技术:逻辑上为一个表,物理层上为多个表。解决了分表中,数据操作的复杂性。


3.访问速度

1).Squid代理缓存技术

2).页面静态化

3).Memcache

4).Sphinx搜索加速 


Squid代理缓存技术

当用户访问网站时,第一次访问后,静态的资源会被缓存到squid代理服务器中,第用户第二层访问时,直接从代理服务器中取出来。

什么是静态数据?

静态页面,图片/flash,css文件,js文件


页面静态化

把一些不经常改变的页面,存储成HTML静态页面,如此,不需要额外的耗费cpu来计算,更不需要连接数据库去查找数据。极大的提高了访问速度

一般静态化和缓存机制是器使用的,称为静态化缓存


Memcache

把数据存储到内存中,从而提高数据的读取数据。


Sphinx全文索引

是一个就sql的全文搜索引擎,可以结合mysql做全文搜索,它可以提供比mysql更专业的搜索功能,使得应用程序更容易实现专业的全文搜索。Sphinx特别为一些脚本原因设计API接口,同时为mysql设计了存储引擎。

主要特点:

高速索引 (在新款CPU上,近10 MB/秒); 高速搜索 (2-4G的文本量中平均查询速度不到0.1秒); 高可用性 (单CPU上最大可支持100 GB的文本,100M文档); 提供良好的相关性排名 支持分布式搜索; 提供文档摘要生成; 提供从MySQL内部的插件式存储引擎上搜索 支持布尔,短语, 和近义词查询; 支持每个文档多个全文检索域(默认最大32个); 支持每个文档多属性; 支持断词; 支持单字节编码与UTF-8编码;


4.网站服务,流量监控

服务监控:

 1)Apache web服务监控

 2)mysql数据库监控

 3)磁盘空间监控

流量监控:网站流量监控

作用:监控发现问题,才能及时解决问题,避免损失

网络管理协议:snmp

网络监控软件:mrtg,cacti

邮件报警:

1)postfix发邮件系统

2)sendmail发邮件系统

3)dovecot收邮件系统

发邮件过程:

qq邮箱向163邮箱发送以一封邮件

例子:

qq邮箱使用的smtp协议向qq服务器端发送邮件,qq服务器使用smtp协议向163服务器发送邮件。163服务器通过Imap/pop3向163客户端发送邮件


Apache压力测试

1.Apache自带压力测试软件ab测试

2.Apache benchmark apache基准测试工具

3.有httpd-2.2.3-43.el5.centos软件提供

4.ab测试时,可能要创建很多测试文件并删除


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议