网站运营总结
-
大访问量
-
大储存量
-
访问速度
-
服务器监控
大访问量
-
负载均衡(是把众多的访问流量分配到不同的服务器上,让每个服务器的压力减少,负载降低,以轮询的方式分担到不同的服务器上)
-
Cisco以太网通道(网络层)
-
Windows NLB技术(服务器层)
-
Linux LVS技术(服务器层)
-
F5等负载均衡器(网络层)
-
冗余技术(是为了避免单点故障,在其他服务器+一个备份服务器,只有一台是激活状态,其它机器是休眠状态,一台机器出现问题,其他机器会选出一台机器激活,是通过心跳线)
-
Windows集群技术(服务器集群技术)
-
Linux HA集群技术(服务器集群技术)
-
IBM AIX集群(服务器集群技术)
-
Cisco HSRP热备份路由(网络端不间断,网络端的冗余,计算出一个小的逻辑虚拟路由器(它是由两个真实的路由器计算出来))
作为一个架构师,来运营一家公司的网站,三部分都必须涉及,1.网络构架 2.服务器构架 3.应用程序构架
大的数据存储
主流数据库:
1.Mysql(主、从复制,主服务器主要就行增加删除修改、从服务器主要就行查询操作)
2.Oracle(甲骨文)
3.Db2(IBM)
4.Nosql(mongodb、redis)
MongoDB是一个基于分布式文件存储的数据库。由c++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案
MongoDB
是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的
bjson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现
类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
网站加速技术
1.Squid代理缓存技术
是一个软件(最初用来做代理服务器),公司内部员工上网一般两个技术(snat和squid代理服务器),代理服务器内保证内部和外部网完全隔离。Squid三大功能(1.普通代理服务器、2.透明代理服务器、3反向缓存代理服务器)
静态数据:
静态页面、图片/Flush、CSS文件、JS文件
新浪北京总服务器-》各地市的反向代理Squid服务器(静态数据)-》各地市访问的网民客户端
可以把静态和动态数据分离,同时实现代理
2.页面静态化缓存
方法一.使用现成的插件 Apache 的mod_rewrite
方法二.创建FSO对象、利用模版框架技术、使用server.Transfer技术
方法三.是使用ajax技术
3.Memcache
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,让后从内存中读取,从而大大提高读取速度。
Memcached是一守护程序方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。
内存缓存机制(主要缓存查询数据),机器宕机会造成数据丢失
4.Sphinx搜索加速
Sphinx是一个基于SQL的全文检索引擎,可以结合Mysql,PostgreSQL做全文搜索,使得应用程序更容易实现专业化的全文检索。搜索引擎具有中文分词、高亮技术。
服务器监控(双向监控)
1.服务监控
1)apache web服务监控
2)mysql数据库监控
3)磁盘空间监控、cpu和内存监控
2.流量监控
1)网站流量监控
1).Mrtg网站监控
2).Postfix邮件服务器
3).Shell邮件报警
4).Cacti网站监控
5).Cacti邮件报警
转载请注明:学时网 » 大型网站架构学习总结