架构思想

      架构思想

1.1       HTML页面静态化

通过商城后台CMS达到网站某部分页面静态化,例如各个频道及首页等。互联网上大型网站一般为了提高性能在首页和各个频道都采用CMS发布静态化页面的方法。这个简单有效的方法特别是针对大量内容频繁更新的站点,CMS的好处不必多言,是网站必不可少的有效的工具。页面静态化也是缓存策略的常用手段,对于系统中频繁使用数据库查询但是内容更新很小的应用,可以考虑使用html静态化来实现,比如商城中的公用设置信息,这些信息其实大量被前台程序调用,但是更新频率很小,可以考虑将这部分内容进行后台更新的时候进行静态化,这样避免了大量的数据库访问请求。

1.2       2、图片服务器和应用服务器分离

对于网站来说,图片的展示和加载也是很消耗资源的,于是大部分网站也进行图片和页面的分离,有独立的图片服务器,甚至是图片服务器集群,这样可以很好的进行提供服务和缓解应用服务器的压力,并且可以保证网站不会因为图片问题而崩溃,在应用服务器和图片服务器上,可以进行不同的配置优化。目前流行的lighttpdNginx等很好的支持图片的访问服务。

1.3       库表散列和数据库集群

无论是网站还是企业系统,几乎所有的瓶颈都在与IO,如数据库的读写,特别是面对复杂、高访问量的时候,这一瓶颈会很快显现出来,这时一台或几台数据库将无法满足应用,于是我们需要使用数据库集群或者库表散列。在这点上像Oraclemysql等都有很好的方案可供参考,比如MysqlMaster/Slave模式,由于数据库集群在架构、成本、扩张性等方面都会受到所采用DB类型的限制,因此我们必须考虑数据库设计,以尽可能的改善系统性能,数据库表散列是经常考虑的数据库设计因素,

比如根据用户ID进行表散列。

1.4       4、缓存

这个是网站必用技术,一般有前端缓存和后端缓存之分,前端缓存如Squid等,apache自己也提供了缓存模块,后端缓存基本是降低数据库的负载或文件IO的作用,如Memcached

Memcached是高性能、分布式的内存对象缓存系统,用于在动态应用系统中降低数据库负载,以提升访问速度和提高可扩展性。MemcacheDanga Interactive开发,是danga.com的一个项目,而Memcached是它服务器端的主程序文件名,初始是为LiveJournal网站服务的,主要用于提升LiveJournal.com访问速度,LJ每秒动态页面访问量几千次,用户700多万。目前全世界不少大型网站和系统都在使用这个缓存项目来构建,国外如FacebookYhaooYoutube等,国内也有广泛应用,如搜狐、新浪及其他大型Web2.0SNS社区等。Memcached 服务器端和客户端共同工作,组成分布式全局缓存服务器群组,实现跨服务器的缓存服务提供。其中客户端至关重要,分布式缓存服务结构基本是由客户端的分布式机制决定的。

1.5       5、镜像

镜像技术也是各个大型站点常用策略之一,以提高网站整体服务能力,基本上能够解决不同网络接入商和地域带来的用户访问速度差异。镜像的技术很多,有商业产品也有比如Linux上的rsync等免费工具。

1.6       6、负载均衡

硬件四层交换:

负载均衡将是大型网站解决高负荷访问和大量并发请求采用的终极解决办法,有众多的商业产品和解决方案。如F5, Alteon;也有众多开源软件负载均衡搭配方案。搜狐淘宝等使用了F5,中国雅虎使用了Alteon

软件四层交换

Linux上常用的LVSLinux Virtual Server)来解决,如在软件或者硬件四层交换的基础上搭建squid集群,很多大网站都采用这种思路,高性能、低成本、扩展性都是其流行的原因。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值