如何优化网站

以下讨论的方法是只针对单服务器而言的,而且优化过的程序在单台服务器上运行,是完全满足需求很多中小网站的,比如你只有一台机器,上面运行WebServer、数据库、所有的资源文件如css、js、上传文档、图片甚至视频。如果单台硬件机器能很好的优化代码程序,那么可以很大程度节省硬件成本,而且对于大多数网站已经足够。

任何网站都需要考虑的一个问题是,如何提高并发访问量,我们追求一个字,就是“快”,用户需要的东西,能在尽可能短的时间内给予

 

基本原则

  • 避免重复
  • 减少数据量
  • 提前准备好

 

我用过的方法,具体项目参考《C++开发的论坛系统 - BBS》

 

 

 

前端

html

  • html文件gzip预压缩
  • 减少文件的包含,比如js、css,页面文件专用的js、css直接包含在页面文件中
  • 页面遮挡部分不完全加载,比如滚动条滚动到时在临时加载,比如图片
  • 页面中的动态部分使用ajax动态处理,比如用户登录条

javascript

  • 对于大量的字符串拼接,使用push、join,而不用运算符+
  • 动态内容创建,能使用innerHTML的尽量使用innerHTML,而不用createElement
  • 页面包含javascript文件引用时,尽量置于页面文件底部
  • 整个网站通用的javascript功能集中在一个文件里,比如common.js
  • javascipt内容使用混淆压缩
  • 所有发布的javascript文件使用gzip压缩

css

  • 通用css样式集中到一个文件里,比如common.css
  • 将css内容进行压缩
  • 将css文件进行gzip压缩
  • 将页面包含css文件引用尽量放到页面文件顶部

图片

  • 资源图片,尽量使用sprite方式处理(注意不是所有图片都适合这种方式)
  • 用户上传图片,server端在不影响图片质量的情况下,对尺寸及像素进行压缩,单张图片以300k为上限

后端

动态页

  • ajax方式局部获取动态数据,使用js方式动态渲染页面
  • 页面模板替换部分顺序处理,而不是请求是临时替换

数据库

  • 使用NoSQL数据库,而不用关系数据库(不是所有的项目都适合NoSQL)
  • 只处理所需数据,而不是对整个数据行进行操作
  • 减少事务的处理占用时间
  • 创建索引

其他

  • 动态网页静态化处理,比如首页对数据库的操作比较多,而访问量又比较大,使用定期更新首页成html文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值