初级网站架构图示

标签: 网站 架构 图示 | 发表时间:2014-11-24 00:27 | 作者:zyu67
出处:http://blog.csdn.net

初级网站架构图示  


原创内容欢迎转载,请注明出处: http://dushii.blog.163.com/blog/static/17305193200883044111183/
网站基本架构图示:
仅供参考,这个架构是针对仅有数台服务器的一般应用,门户型应用肯定要复杂的多。
初级网站架构图示 - 度适 - 高性能网站架构探索
本图由 亿图图示专家绘制,此绘图软件值得推荐。

主要矛盾
对于高并发的网站系统,最早暴露出来的问题就是数据库瓶颈,超级牛的数据库系统也很快会成为访问速度的瓶颈。所以,欲提高访问速度首先要解决的瓶颈就是数据库访问。策略就是
一、缓存:
1、Squid前端缓存;
2、Memcached后端缓存;
3、创建外部索引文件,如使用Sphinx;
二、数据库服务器阵列:
1、将数据库读写操作分开,分为主从服务器;
2、主从服务器分别按照一定规则设置成阵列;

总之,尽量减少对数据库的请求数量,进一步使用负载均衡,最大程度降低单台服务器的压力。

使用 Nginx做负载均衡的理由:
  1. 免费使用
  2. 高连接并发,能够支持高达 50,000 个并发连接数的响应
  3. Nginx采用C进行编写, 内存、CPU开销少
  4. 配置文件简单
  5. 支持url重写,支持GZIP压缩节省带宽
  6. 超级稳定,几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动
  7. 国内已经有多家知名网站使用 Nginx 作为Web服务器或反向代理服务器

详细介绍
客户端在浏览器地址栏输入域名后,将首先访问最前端的代理服务器,静态文本型文件有此服务器直接返回,这里设置了单独的图片服务器,适合图片非常多的网站。将一部分特定的url代理到后端Squid服务器,Squid服务器根据url地址检查是否有缓存的内容,有则返回给前端服务器,否则再访问后端的php应用,获取内容并缓存以备下次访问。Squid服务器可以是一台,也可以是按一定规则组织的阵列。

PHP应用也可以是一台或者一个阵列,单台服务器的情况比较简单,阵列的话需要考虑客户端session回话的问题,解决的办法有二:
1、阵列服务器共享session回话,如统一使用memcached存储session;
2、前端服务器能判断客户端是属于哪个php服务器处理,并始终将此客户端代理给这个php应用;

比较这两个办法,从可扩展性的角度为长远考虑,第二种办法可能更为妥当。对于首次访问php应用的客户端,采取轮回规则进行负载均衡,php给客户端设置一个cookie方式的标记,再次访问则根据cookie信息链接到先前的php应用上。
比如:设置一个cookie信息host=n,n是一个数字,nginx可以获取客户端的cookie信息字符串,
upstream  backend  {
    server   backend1.example.com       weight=5;
    server   backend2.example.com:8080;
}

if ($http_cookie ~* "host=([^;]+)(?:;|$)" ) {
   proxy_pass http://192.168.0.$1;
} else {
   proxy_pass http://backend;
}

memcached数据缓存、sphinx站内搜索、mysql主从阵列等使用可以找下相关详细的资料。
以后会有补充。
作者:zyu67 发表于2014-11-23 16:27:21 原文链接
阅读:66 评论:0 查看评论

相关 [网站 架构 图示] 推荐:

初级网站架构图示

- - CSDN博客Web前端推荐文章
原创内容欢迎转载,请注明出处: http://dushii.blog.163.com/blog/static/17305193200883044111183/. 仅供参考,这个架构是针对仅有数台服务器的一般应用,门户型应用肯定要复杂的多. 本图由 亿图图示专家绘制,此绘图软件值得推荐. 对于高并发的网站系统,最早暴露出来的问题就是数据库瓶颈,超级牛的数据库系统也很快会成为访问速度的瓶颈.

Facebook 网站架构

- - idea's blog
我收集到一些文章和视频, 可以带你窥探 Facebook 的架构. Facebook 承载了几十亿的用户, 它的架构(包括思想和实现)是非常值得参考的. 当然, 你要小心不要照搬 Facebook 的每一字一句, 因为任何思想和实现都是有自己的应用场景的.. Google Talk 界面开发分析. 使用Python POST任意的HTTP数据以及使用Cookie.

网站架构演进

- - CSDN博客互联网推荐文章
很多年前,世界上出了互联网这个东东,不久之后又出来了网站这个家伙. 那时的程序员还只是程序员,有的程序员Deid,But他依然live的. 不像现在,他虽然活着,但已经不仅仅是程序员那么简单了,因为他更喜欢用屌丝来形容自己. 网站的远古时代就好像我们的原始时代一个意思的. 作者:enson16855 发表于2013-7-8 22:43:36 原文链接.

[转载]【摘】SNS社区网站架构

- - 网站架构_搜搜博客搜索
  SNS网站:全称Social Network Site,就是依据六度理论建立的网站,也是基于社会网络关系建立的网站.   原本经济危机来了,FACEBOOK估值从150亿美金跌至40亿;国内互联网创投环境也日趋寒冷,而在舆论界,关于SNS的话题似乎热度未减,,当然在精彩文章之中也夹杂着一些隔靴搔痒式的讨论;.

大型门户网站架构分析

- - 网站架构_搜搜博客搜索
   大型门户网站架构分析.   千万人同时访问的网站,一般是有很多个数据库同时工作,说明白一点就是数据库集群和并发控制,这样的网站实时性也是相对的. 这些网站都有一些共同的特点:数据量大,在线人数多,并发请求多,pageview高,响应速度快. 总结了一下各个大网站的架构,主要提高效率及稳定性的几个地方包括:.

大型网站系统架构粗探

- - 网站架构_搜搜博客搜索
  软件架构有很多种定义,下面是卡内基梅隆大学软件研究所关于软件架构的定义:.   软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计. 软件架构描述的对象是直接构成系统的抽象组件. 各个组件之间的连接则明确和相对细致地描述组件之间的通讯. 在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象.

Flickr 网站架构研究(1,2)(zt)

- - 网站架构_搜搜博客搜索
  Flickr.com 是网上最受欢迎的照片共享网站之一,还记得那位给Windows Vista拍摄壁纸的Hamad Darwish吗. 他就是将照片上传到Flickr,后而被微软看中成为Vista壁纸御用摄影师.   Flickr.com 是最初由位于温哥华的Ludicorp公司开发设计并于2004年2月正式发布的,由于大量应用了WEB 2.0技术,注重用户体验,使得其迅速获得了大量的用户,2007年11月,Flickr迎来了第20亿张照片,一年后,这个数字就达到了30亿,并且还在以加速度增长.

网站的分布式架构

- - 互联网的那点事
互联网的网站和大部分企业管理软件一样都是使用B/S架构模型,但是大型的公共网站B/S架构会更加复杂,对架构人员的要求更高,今天我想在自己博客里聊聊我设计的网站的B/S技术架构. 不管是B/S架构的企业管理系统还是网站技术架构可以抽象为如下简图:. 在传统B/S架构的企业管理系统里,技术架构往往就是一个工程项目,各个逻辑分层都是该工程的业务逻辑模块.

大型网站架构的发展

- - 舒の随想日记
您也可以在slideshare查看或下载这张.

如何优化网站信息架构

- - 钛媒体网
最近突然想写个专题类的文章,关于如何让用户更方便快捷地在网站上寻找到他们需要的信息,当然不能脱离博客的主题——网站数据分析,所以这里主要介绍的是如何通过网站分析来优化网站,实现用户对信息的快速获取,首先介绍的是网站的信息架构. 关于信息架构,网站设计的同学才是专家,我在这里只是班门弄斧,根据大学里面阅读的信息架构类文献资料的一些残存的记忆,再加上这几天临时抱佛脚的简单温习,在这里表述一下我的一点拙见.