浏览量比较大的网站应该从哪几个方面入手?
减少数据库的压力
缓存查询结果/新建内存表
减少服务器的压力——减少HTTP的请求次数
背景图片全部做成一张然后用CSS控制位置/不使用AJAX来进行即时验证(不考虑客户体验什么的,通过拖长客户时间来减轻服务器压力)
减轻I/O压力
页面局部缓存
-----------------------------------------------------------------------------------------------------------------------------------------
一横向
1、首先要考虑的就是硬件,适当地投入硬件,要比你搞那么多软件优化要实惠的多.
2、在就是从cpu 内存硬盘了.
频繁操作的数据能存到内存中就存到内存中,能存到分布共享中就存储在分布共享内存中。
其次考虑在考虑硬盘上.
二纵向
1、从web的http的响应 应答考虑
web要有服务器,所以如何优化服务器,如何通过配置服务器加速操作,能缓存地缓存,这方面的东西不少。
2、要是动态脚本,考虑使用的数据库 如何优化数据库、如何建立合理的表等操作 这方面细节同样不少。
3、用php脚本,尽量少的require 文件,毕竟每次php是一次性编译,而且每次到require都要返回 这个脚本方面就要看程序员的水平了。
-----------------------------------------------------------------------------------------------------------------------------------------
一、减少数据库的压力
缓存查询结果/新建内存表
有条件就把数据库尽量分开,减小数据库的规模
杜绝超过0.5s的 queries - 非常重要!
开大内存索引
二、 减少Apache的压力——减少HTTP的请求次数
背景图片全部做成一张然后用CSS控制位置/不使用AJAX来进行即时验证(不考虑客户体验什么的,通过拖长客户时间来减轻服务器压力)
背景图片?这个没必要.静态内容不要用apache!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
三、减轻I/O压力
页面局部缓存
-----------------------------------------------------------------------------------------------------------------------------------------
可以lighttp+apache配合的...lighttp负责静态的如image,js,css等,apache负责php,用rewrite转发到lighttp
甚至有研究表明,lighttp处理fastcgi模式下的php,要比apache等要快
性能上,lighttp是要优于apache的,但稳定性就差点..
WEB方面:
1.脚本引用的资源文件如css,js,image可以多放几台服务器上,尽可能地压缩。
2.适当地加入ajax
3.尽量控制php的代码行,如果方便的话,可以写成com或so级的
4.缓存
考虑硬件成本的话可以笼统地从以下着手
一、页面尽量静态化
二、配置服务器动态的走apache,静态的走Lighttpd
三、用最好的OS如FreeBSD
四、重点优化mysql性能从编译、配置上入手
五、最基本的控制好程序性能及SQL查询
六、做缓存、做代理反向代理
七、页面上的优化了,节省流量上的考虑
静态文件用apache的代价很大,其实lighttpd和NGINX这类的也并不会小太多,有一些支持"文件至网卡"模式的特殊静态服务器可能划算一些。php的调用文件个数可以做到比较精确的控制,tmpfs一类的方法可以尝试,不要过分迷信memcached,本地cache适当用用回保不错
-----------------------------------------------------------------------------------------------------------------------------------------
优化数据库访问
前台实现完全的静态化当然最好,可以完全不用访问数据库,不过对于频繁更新的网站,静态化往往不能满足某些功能。
缓存技术就是另一个解决方案,就是将动态数据存储到缓存文件中,动态网页直接调用这些文件,而不必再访问数据库,WordPress和Z-Blog都大量使用这种缓存技术。我自己也写过一个Z-Blog的计数器插件,也是基于这样的原理。
如果确实无法避免对数据库的访问,那么可以尝试优化数据库的查询SQL.避免使用Select * from这样的语句,每次查询只返回自己需要的结果,避免短时间内的大量SQL查询。
禁止外部的盗链。
外部网站的图片或者文件盗链往往会带来大量的负载压力,因此应该严格限制外部对于自身的图片或者文件盗链,好在目前可以简单地通过refer来控制盗链,Apache自己就可以通过配置来禁止盗链,IIS也有一些第三方的ISAPI可以实现同样的功能。当然,伪造refer也可以通过代码来实现盗链,不过目前蓄意伪造refer盗链的还不多,可以先不去考虑,或者使用非技术手段来解决,比如在图片上增加水印。
控制大文件的下载。
大文件的下载会占用很大的流量,并且对于非SCSI硬盘来说,大量文件下载会消耗CPU,使得网站响应能力下降。因此,尽量不要提供超过2M的大文件下载,如果需要提供,建议将大文件放在另外一台服务器上。
使用不同主机分流主要流量
将文件放在不同的主机上,提供不同的镜像供用户下载。比如如果觉得RSS文件占用流量大,那么使用FeedBurner或者FeedSky等服务将RSS输出放在其他主机上,这样别人访问的流量压力就大多集中在FeedBurner的主机上,RSS就不占用太多资源了。
使用流量分析统计软件。
在网站上安装一个流量分析统计软件,可以即时知道哪些地方耗费了大量流量,哪些页面需要再进行优化,因此,解决流量问题还需要进行精确的统计分析才可以。
开业运营7周年亚投行朋友圈何以越来越大?1月16日,亚洲基础设施投资银行迎来开业运营七周年。从七年前的57个创始成员国到如今拥有来自世界六大洲的106个成员,亚投行朋友圈何以越来越大?坚定践行多边主义,同行伙伴越聚越多半
明年国内经济形势预判(本文仅代表个人观点)阅读全文大概需要3分钟20年初暴发口罩封控以来,至22年12月完全放开,几乎所有国人都在家整整憋了三年。现在大多数人也基本上都阳过了,核酸两码也已逐步退出人们
魅族20系列配置曝光!久违的魅族回来了!久违的魅族要回来了,自魅族被吉利收购后,也开始步入正轨,新机魅族20系列也在准备当中,相信很快就能与魅友见面了。许多用过魅族的用户,都觉得Flyme系统的小窗和X轴线性马达yyds
本周A股解禁市值约1889亿元,京沪高铁解禁超1000亿本周(1月16日1月20日)共有66家公司涉及限售股解禁,合计解禁量约277。21亿股,按最新收盘价计算,解禁市值为1888。93亿元。未来四周解禁情况本周解禁数量最多的是京沪高铁
大化焕新沧州到坊招商推介大会举行1月14日,大化焕新沧州到坊招商推介大会在园博园中的沧州坊举行。本次推介会由沧州大运河发展(集团)有限责任公司主办,沧州大运河运营管理有限公司厚几文旅产业(北京)有限公司承办。推介
投融资周报本周医疗领域13起投融资,5起超亿元(人民日报健康客户端王圆)据人民日报健康客户端不完全统计,1月9日1月13日,全国医药健康领域共发生13起投融资事件。其中融资额达到亿元级别的共有5笔,涉及皮肤新药美瞳脊柱健康筛查
国际帅铃启航欧洲!江淮1卡帅铃100台纯电动轻卡交付法国西班牙新年伊始,万象更新。1月11日下午,江淮1卡帅铃100台电动轻卡成功交付法国西班牙。江淮汽车在技术中心举行挪威500台电动乘用车暨法国西班牙100台电动轻卡发车仪式。交车现场车辆整
以鼠鼠文学自嘲?切勿被悲观心态拿捏住张雪(湘潭大学)近日,网络上兴起了以鼠鼠自称的表达方式,被戏称为鼠鼠文学。鼠鼠一词被网友用来开玩笑式地自嘲,因为觉得自己无权无势,生活在社会的最底层,也没有什么出众的本事,只能像老
美政府债务规模将触及上限众议院共和党人再次敦促政府削减开支美国财政部长耶伦13日通知国会,美国政府债务规模将于19日触及上限,她呼吁国会尽快采取行动,再次提高债务上限,以避免出现债务违约。但控制国会众议院的共和党方面一直坚持将削减开支与提
过去五年全省法院调解案件39。8万件中国甘肃网1月16日讯(本网记者程健张兰琴高正武)1月16日下午,甘肃省第十四届人民代表大会第一次会议第二次全体会议召开。记者从大会上了解到,五年来,全省法院全面建成厅网线巡立体化
云安六都免费发放肉鸡苗1840只助农增收近日,一辆载着上千只鸡苗的货车停在了云浮市云安区六都镇上六村党群服务中心,一筐筐优质鸡苗被小心卸下,一一发放给了六都镇建档立卡脱贫户和防返贫监测对象。在发放现场,大大小小装着鸡苗的