大型互联网网站架构心得

news/2024/5/15 3:23:47/文章来源:https://blog.csdn.net/weixin_33755554/article/details/93375694
我们知道,对于一个大型网站来说,可伸缩性是非常重要的,怎么样在纵向和横向有良好的可伸缩性,就需要在做架构设计的时候考虑到一个分的原则,我想在多个方面说一下怎么分:

首先是横向的分:
1. 大的网站化解为多个小网站:当我们一个网站有多个功能的时候,可以考虑把这个网站拆分成几个小模块,每一个模块可以是一个网站,这样的话我们到时候就可以很灵活地去把这些网站部署到不同的服务器上。
2. 静态动态分离:静态文件和动态文件最好分离开成2个网站,我们知道静态网站和动态网站对服务器来说压力的侧重不同,前者可能重IO后者重CPU,那 么我们在选择硬件的时候也可以有侧重,而且静态和动态内容的缓存策略也不一样。典型的应用,我们一般会有独立的文件或图片服务器。
3. 按照功能来分:比如有一个模块是负责上传的,上传操作很消耗时间,如果和其它应用混在一起的话很可能,一点点访问就会使服务器瘫痪,这种特殊的模块应该分开。安全的不安全的也要分开,还需要考虑到以后SSL的购买。
4. 我们不一定要全部用自己的服务器,搜索、报表可以依靠别人的服务,比如google的搜索和报表服务,自己做的不一定比得过别人,服务器带宽都省了。


其次是纵向的分:
1. 文件也相当于数据库,IO的流量可能比数据库还大,这也算是纵向级别的访问,上传的文件图片一定要和WEB服务器分开。当然,数据库和网站都放在一个服务器上的很少了,这是最基本的。
2. 对于涉及到数据库访问的动态程序来说,我们可以使用一个中间层(所谓的应用层或逻辑层)来访问数据库(部署在独立的服务器上),最大的好处就是缓存 和灵活性。缓存的内存占用比较大,我们要把它和网站进程分开,而且这样做我们可以很方便的去改变一些数据访问的策略,即使到时候数据库有分布的话在这里可 以做一个调配工作,这样灵活性就很大了。还有好处是中间层可以做电线网通桥梁,可能网通访问双线再访问电信会比网通直接访问电信服务器快。


有人说我不分,我可以做负载均衡,对,是可以的,但是如果分的话,同样的10台机器肯定比不分10台机器可以承受更多的访问量,而且对硬件的需求可能不会 很高,因为知道需要哪个硬件特别好。争取让每一个服务期都不空闲,又都不是太忙,合理进行组合调整和扩充,这样的系统伸缩性就高了,能根据访问量来调整的 前提就是之前有考虑到分,分的好处是灵活性、伸缩性、隔离性以及安全性。

对服务器来说,我们有几点是要长期观察的,任何一点都可能是瓶颈:
1. CPU:动态文件的解析需要比较多的CPU,CPU出现瓶颈就要看是不是哪个功能过长时间占用线程,如果是就分出去。或者就是每一个请求处理时间不长,但是访问量很高,那么就加服务器。CPU是好东西,不能让他干等,不做事情。
2. 内存:缓存从IIS进程独立出去,一般对WEB服务器来说内存不够的情况不是很多。内存比磁盘快,要合理利用。
3. 磁盘IO:用性能监视器找到哪些文件IO特别大,找到了就分到独立的一组文件服务器上去,或者直接做CDN。磁盘慢,大规模读取数据的应用靠缓存,大规模写入数据的应用可以靠队列来降低突发的并发。
4. 网络:我们知道,网络的通讯是比较慢的,比磁盘还慢,如果是做分布式缓存,分布式计算的话,要考虑到物理服务器之间网络通讯的时间,当然,在流量大 了以后,这可以提高系统的接纳能力一个等级。静态内容可以借助CSD分担一部分,在做服务器假设的时候还要考虑中国特色的电信网通情况以及防火墙。

对SQL SERVER数据库服务器来说[UPDATE]:
其实还是水平分割和纵向分割,一个二维表,水平分割就是横过来切一刀,纵向分割就是竖直切一刀:
1、纵向分割就是,我们不同的应用可以分到不同的DB中,不同的实例中,或者说把某个拥有很多字段的表拆分成小表。
2、横向分割就是,某些应用可能不负载,比如用户注册,但是用户表会非常大,可以把大表分开。可以采用表分区,数据存储在不同文件上,然后再部署到独立物 理服务器增加IO吞吐以改善读写性能,土一点的做法就是自己定期把老的数据存档。表分区的另外一个优势可以增加数据查询速度,因为我们的页索引可以有多层 了,就像一个文件夹中的文件不要太多,多分几层文件夹一样。
3、还可以通过数据库镜像、复制订阅、事物日志,把读写分开到不同的镜像物理数据库上,一般来说够用,如果还不行可以用硬件来实现数据库的负载均衡。当然,对于BI,我们可能还会有数据仓库。

架构上考虑到了这些之后,流量大了,就可以在这个的基础上再去调整或者做WEB服务器或者应用服务器的负载均衡。很多时候我们都是在重复发现问题-》找到瓶颈-》解决这个过程。

典型的架构如下:


动态WEB服务器配好点的CPU,静态WEB服务器和文件服务器磁盘好点
应用服务器内存大点,缓存服务器也是,数据库服务器当然内存和CPU都要好

转载于:https://www.cnblogs.com/zhougb/archive/2009/03/30/1425120.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_771805.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.net core 跳转页面_网站怎么做404页面,以及网站怎样绑定多个域名

为了使网站更好地为用户浏览和更好的体验,有时用户在打开网站时会有一些错误页面。 这时,我们必须在网站中创建一个404页面以跳转到该网站的首页,这对于保留用户是有好处的,同时有效地告诉搜索索引这些页面已经消失了!…

网站可以如此复制?

论坛中碰到如此问题:我们做了一个网站,域名是www.3322173.com 没想到今天忽然发现了www.qiepeng.cn的内容和我们的是一模一样...内容也是同步更新,只是把内容中3322173.com替换成qiepeng.cn 我关闭我自己的IIS后,两个域名都不能访问了. 我郁闷啊,这是什么样的技术哦…

一步步构建大型网站架构

一步步构建大型网站架构 之前我简单向大家介绍了各个知名大型网站的架构,MySpace的五个里程碑、Flickr的架构、YouTube的架构、PlentyOfFish的架构、WikiPedia的架构。这几个都很典型,我们可以从中获取很多有关网站架构方面的知识,看了之后你…

Anonymous几天之内攻陷500多个中国网站

根据CNET的报道,Anonymous***激进组织已经在几天之内黑掉了超过500个中国政府/商业网站,并号召中国***加入他们。 The hacked Web site for the Central Business District in Chengdu, China. (Credit: Screenshot by Steven Musil/CNET)

烂泥:使用火狐解决网站图片不能复制下载的问题

本文首发于:烂泥行天下www.lanni654321.com由LureDresswww.luredress.com提供赞助 由于博客的需要,需要转载和下载一些网络上的图片,比如最近在阿里巴巴上看到的图片。想下载一些图片,但是阿里巴巴禁用鼠标的右键功能。网络上也有…

Java实现网站请求流量分析统计

如上图所描绘的,在不断刷新test.html请求页面时,上图total.html页面会实时的更新(1秒响应更新一次),折线图会实时进行上下变动。其中需要导入echarts.min.js和jquery-3.5.1.min.js和fastjson-1.2.53.jar包。 0.首先是…

从vancl看垂直商业网站的崛起

如果说2007年IT业内的几大事件,卖衬衣的卖火了,这肯定是2007年的重大事件之一。提起卖衬衣的,大家肯定会想到的是PPG,但我为什么不拿PPG做标题呐?我认为PPG并不是真正的互联网公司,PPG只是打了一个网络直销…

55个漂亮的蓝色风格网站设计作品欣赏(上篇)

蓝色是光的三原色中的一元,是最冷的色彩,非常纯净,通常让人联想到海洋、天空、水、宇宙。纯净的蓝色表现出一种美丽、冷静、理智、安详与广阔。今天,本文收集了一些优秀的蓝色风格的网站设计作品与大家分享,一起欣赏。…

大型电子商务网站架构求解

这是一个技术提问帖,更是一个技术回复分享帖!希望有经验的朋友能够不吝赐教,让我们能在回复中分享到技术!同样希望管理员同志不要将此贴移出首页区,在讨论中学习和分享知识也是一种学习的方式,不是吗?---------------------------------华丽的分割线-------------------------…

Apache主导全美100大网站

随着同 IIS 的竞争以及 Lighttpd 的崛起,关于 Apache 市场下滑的声音不绝于耳,但 Pingdom 的统计表明,Apache仍然主导全美100大网站,占据了49%的市场份额。在 Pingdom 检测的众多网站中,Web服务器的使用五花八门&…

Wordpress Seo 优化的几个建议

WordPress SEO一直是大家很关系的问题,我们也曾经发过WordPress SEO 完全指南,那篇文章系统而详细的见解了如何对WordPress进行优化,今天Wopus中文平台的SEO顾问swsw007给大家分享他的一些WordPress SEO的技巧。一、3步把wordpress打成seo良好…

年度盛宴——2012年排名前20的 HTML5 应用和网站作品

过去的2012年,Web 领域有众多新变化:HTML5 将在2014年成为推荐标准;W3C 任命了4位新编辑来管理 HTML5 规范并托管到 Github 上面;WHATWG 继续致力于活动的 HTML 标准(Living Standard)。 您可能感兴趣的相关…

android客户端和网站数据交互的实现(基于Http协议获取数据方法)

android客户端一般不直接访问网站数据库,而是像浏览器一样发送get或者post请求,然后网站返回客户端能理解的数据格式,客户端解析这些数据,显示在界面上,常用的数据格式是xml和json。 可以理解客户端其实是一个你自己定…

ASP.NET网站管理工具的初始配置

ASP.NET 网站管理工具是ASP.NET2.0以来VS提供的操作Web.config的GUI.使用起来比直接编辑Web.config方便一些.但初始化配置时会遇到以下麻烦. 参考几个blog和俺自己的实验,总结点东西写写. 1、打开ASP.NET网站管理工具 有两个方法可以打开这个工具。 (1&#xff…

网站加速将由CDN技术实现

2019独角兽企业重金招聘Python工程师标准>>> 过去的两年里,人们熟悉互联网CDN(内容分发网络)越来越深入的理解和印象。如果以前的用户下载信息,软件,甚至玩网络游戏已经在参考的言语CDN的技术,所以现在人们分享视频,视频点播流媒体或广播更依赖加。CDN毫无疑问,CDN技…

idc云服务器网站功能,idc云服务器网站

idc云服务器网站 内容精选换一换在云服务器上搭建网站后,部分客户通过本地网络访问网站时出现偶发性无法访问的情况。确认客户使用的本地网络。若客户的本地网络是NAT网络(本地主机通过NAT功能使用公网IP地址访问弹性云服务器),可能会导致该问题。若客户…

工作系列之可爱屋早教中心网站重构

2010年下半年,经过朋友的推荐,有幸参与到可爱屋早教中心网站重构项目中。可爱屋早教中心在2010年业务经过一次大的升级,急需扩展招生渠道,因此网络招生自然而然提上了日程。他们的官网由以前的工程师建设好以后,托管在…

创建模板_怎么用模板创建自己的网站

其一,在自己的网站上,首要任务就是购买一个域名。域名的网站是非常重要的,如果你想买一个好的域名,所以在购买前是需要考虑域名,一般来说,在购买时选择主域比较好,特别的人可以去知道更多关于的…

如何给网站瘦身?图文并茂的前端性能优化指南

提高网站的速度对网站的成功有巨大的影响,因为网站的加载速度直接影响到用户体验和搜索引擎排名。Browser Diet 是一个非常好的指南,列出了前端性能优化的各种技巧和工具。 您可能感兴趣的相关文章2012年最佳 Web 前端开发工具和框架史上最全的浏览器 CS…

关闭81端口导致的部分网站无法访问

今天同事去天鹅湖百盛做培训,结果百盛办公电脑均无法登录我们的商务数据系统,但访问其它常用网站包括QQ都正常,杀软、本地防火墙、Winsock LSP都试过,同事搞了很久没搞定打电话过来,准备去现场看看,百度地图…