文档章节

加速网站访问的一些实践体会

FansUnion
 FansUnion
发布于 2015/10/22 10:29
字数 759
阅读 6
收藏 0
自己运营过几个小站,没有任何盈利,为了节省成本,选择的配置比较低,带宽就1M。

   前段时间,在个人官网首页搞了几张轮播图,图片还比较大,展示变得更慢了。

  因此呢,想总结下关于加速网站访问的一些体会。

1.文件压缩
  JS和CSS等静态资源进行压缩,网上有很多压缩工具,建议把压缩做成“可编程”的。
  也可以开启gzip压缩,目前还没有尝试过。

  大图片,也有必要压缩,现在的手机像素都很高,一张照片就有3MB以上,挺吓人的。
  用Freemarker等图片处理工具,压缩下,很有必要。一定程度上的失真,还是可以接受的。

2.多域名部署
   据说,浏览器加载资源的时候,同一个域名下,最多有5~6个线程。(没有论证过)
   如果真是这样的话,可以把JS、图片单独放在一个子域名里。
   比如我们常见的图片,单独放在一个服务器上,而且用单独的域名,img.a.com。 

3.使用CDN加速
   CDN加速,网上有免费的,当然流量有限。
   图片、JS用CDN很不错,自己购买带宽太烧钱了。每增加1M带宽,1年要多花几百元。
   关于CDN,我觉得可以这样来做:
  程序中,配置1个变量,比如useCdn=true,来标记是否使用CDN。
  可以在Freemarker等模版中,判断是否使用CDN的资源,还是本地的资源。

4. JS放在最后加载
   
 出于提高页面加载速度的考虑,作为网页文件,加载顺序是从上到下的,把样式和js文件放到页首自然会先加载。(copy的)

5. 用Nginx响应静态资源
    理论上,Nginx响应静态资源性能高于Tomcat,Tomcat高于SpringMVC等框架。

6.配置多台服务器
   实话实说,目前开发和运维的网站,基本没有部署过多台服务器上,因为一台就足够了,大部分情况下,也不会出问题。
  出于多种因素考虑,多配置几台服务器也是不错的主意。 

7. 缓存和静态化
   把很少变化的数据,缓存起来。
   不变的页面,静态化成html。
   加速响应速度。
   页面静态化,还需要尝试。

8.利用第三方检测工具
   百度站长平台、360站长平台,可以检测网站的访问情况,根据这些工具的反馈,根据自身情况,逐一加速。

9. 其它方法
    个人运营网站的经验有限,只总结了一些自己尝试过或者比较常见的方法,更多加速方式,可以度娘。

小雷FansUnion
2015年2月10日
湖北-武汉-循礼门 

版权声明:本文为博主原创文章,未经博主允许不得转载。

© 著作权归作者所有

共有 人打赏支持
FansUnion
粉丝 57
博文 858
码字总数 825464
作品 0
丰台
高级程序员
私信 提问

暂无文章

EOS官方钱包keosd

EOS官方钱包的名称是keosd,它负责管理你的私钥,并且帮你进行交易的签名。 不过不幸的是,keosd钱包对普通用户并不友好,它是一个命令行程序,目前还没有像以太坊的mist那样的图形化界面,而...

汇智网教程
今天
30
0
ArrayList的实现原理以及实现线程安全

一、ArrayList概述 ArrayList是基于数组实现的,是一个动态的数字,可以自动扩容。 ArrayList不是线程安全的,效率比较高,只能用于单线程的环境中,在多线程环境中可以使用Collections.syn...

一看就喷亏的小猿
今天
38
0
Netty 备录 (一)

入职新公司不久,修修补补1个月的bug,来了点实战性的技术---基于netty即时通信 还好之前对socket有所使用及了解,入手netty应该不是很难吧,好吧,的确有点难,刚看这玩意的时候,可能都不知道哪里...

_大侠__
昨天
42
0
Django简单介绍和用户访问流程

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。 Django是一个开放源代码的Web应用框架,由Python写成。 Django遵守BSD版权,初...

枫叶云
昨天
55
0
Spring Cloud Stream消费失败后的处理策略(四):重新入队(RabbitMQ)

应用场景 之前我们已经通过《Spring Cloud Stream消费失败后的处理策略(一):自动重试》一文介绍了Spring Cloud Stream默认的消息重试功能。本文将介绍RabbitMQ的binder提供的另外一种重试...

程序猿DD
昨天
26
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部