怎么设计一个大型网站,非代码类
发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
如何设计一个大型网站,非代码类
想请教下如何设计一个大型的门户网站,主要是设计思想。
主要是文章的,像小型的网站,流量少,数据少的,可以直接存数据库,然后读写数据库。但是针对数据很大,流量很大,每查看一个页面就读写数据库就肯定不行,应该怎么样设计比较好呢?
我知道,生产html静态页面可以解决,但是我考虑的是,在html页面里面也需要加载一些需要从数据库的数据(比如计数,排行榜,评论等等),又该怎么样呢?
或者有没有其他跟好的办法,希望能讲的详细点。万谢!
分数可以加哦。
------解决方案--------------------
缓存
数据库分库,读写分离
前端展示尽量优化,减少http请求的次数
缓存才是王道
------解决方案--------------------
就是尽量减少服务器请求,少调用数据库。
把一些实时性不是那么高的,缓存起来,或者利用静态页面。
数据库读写分离:基本的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询。数据库复制被用来把事务性查询导致的变更同步到集群中的从数据库。
------解决方案--------------------
最主要的办法还是生成html文件,缓存那些东西其实主要还是用在中型网站上的,大型只能生成静态。比如首页,新闻列表,新闻内容都需要静态文件,还有,如果有动态的内容,如新闻评论,问卷调查之类的东西,主要靠ajax来实现。但是也是根据测略,有些是ajax直接访问数据库,主要还是依靠缓存,比如新闻页面内用户点了一下“顶”,计数加1,这个可能是根据当前缓存值简单加1的结果,但是这下点击可能是存储到一个消息队列中,到一个固定时间才会写入数据库。
------解决方案--------------------
nginx-resin-gzip压缩-memcache-某中间层-logic-db
------解决方案--------------------
------解决方案--------------------
可以参考下我的这篇文章。
http://blog.csdn.net/nellson/archive/2010/01/01/5116512.aspx
需要对网站的数据类型进行区分,根据读写请求并发量和数据的重要性进行区分存储。
根据楼主的需求,日志可以根据ID分库分库保存在DB,同时把热帖缓存保证高并发时的响应。像计数和回复需要与帖子分开存储,通过异步的方式加载。
------解决方案--------------------
缓存
数据库分库,读写分离
前端展示尽量优化,减少http请求的次数
------解决方案--------------------
lz说的需求不是很明白,大型门户也是分类的,如果是新闻发布类的,像sina sohu 163 qq这种做成静态再合适不过了,安全性,扩展性,性能,成本都有理想的解决方法,如果是sns,ganji,baidu这类交互性很强的,就不适合做成全静态了。
当然首选是静态(新闻门户都是这样的,这个就不用怀疑了)
第二才是动态+缓存(缓存也有许多种,根据自己的需要选择)
计数,排行榜,评论等等 这些都是定时生成的静态文件碎片,而不是从数据库读来的
------解决方案--------------------
以小人之见,大网站就是 数据库管理,缓存管理,代码管理
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
风生水起才知天高云淡,沧海横流方显英雄本色 百万商业圈云平台免费发布,几十万台电脑变成一台不是梦
百万商业圈分布式云平台功能...
-
登录问题
登录服务器为A 、代理服务器为B 、服务器资源为C.
http发送 验证成功 https请求资源
1.A<---...
-
集群的问题
看了网上很多文章,不是很理解怎么集群的,一下又memcache集群的,一下又mysql集群,还有什么nginx
。
具我了解nginx起的作用...
-
关于计费系统里面的预付费和后付费概念
由于本人刚接触计费系统,对里面的一些概念还有点模糊,特别是对预付费和后付费的理解,我的问...
-
很幽默的讲解六种Socket IO模型(转)
本文简单介绍了当前Windows支持的各种Socket I/O模型,如果你发现其中存在什么错误请务必赐教...
-
数据库读写分离时候可能碰到的问题
数据库读写分离后,如果碰到一种插入操作,是需要对数据做检索后再进行的
例如用户注册,需要检测用...
-
奇怪啊,为何我的一个SWF浏览器缓存文件会被自动清除
我已经设置了这个文件的max-age是100天,也就是说,这个文件会在浏览器缓存里放10...
-
Myfaces日历控件无法弹出
代码如下:
<x:inputCalendar monthYearRowClass="yearMonthHeader"
weekRowClass="w...
-
到底什么才是Web Services
我曾经做过一个android的软件,当时的思想是这样的,我用SSH框架做了一个Web服务端,这个服务端暴露了很多的...
-
Web服务和文件服务分离后的问题
(A是Web服务器,B是文件服务器)
1 A网络映射B,访问A上传文件到B通过映射的路径实现。显示B中的...