一个web项目后期的维护主要在于性能方面。数据吞吐量一旦增大各种bug都出来了。那些通过硬件<数据库分表,数据库主从分离,读写分离>等的一些手段此处就不多说了.本文主要在编码方面做一个性能的比较.如果项目必须在毫秒的基础上在做性能的提升,那编码也是调优的重中之重了。

一,比较耗费性能的关键代码和替代方案:

1,字符串的拼接,特别在一个循环中做字符串的拼接比比较耗费性能的.替代方案可以通过 类stringbuilder来替代.效率更高.这一点相信大家都知道的.

2,序列化和反序列化也是比较耗费性能的.当一些ajax交互或者缓存存取的时候难免会用的序列化反序列化,特别是当采用分布式缓存的时候。将一个字符串常量和将一个对象从缓存中取出来的时间有明显的区别。替代方案:设计的时候尽量考虑到性能,避免直接将一个大的对象比如泛型集合直接存储。可以采用本地缓存和分布式缓存联合使用的机制。分布式缓存只存储 最新缓存的KEY。

3,一些Ling 语句的性能比较。 比如集合的遍历。排序。刷选。有很多种实现方式。哪一种才比较不消耗性能。可以多做比较。个人觉得 泛型集合的select 方法比 where方法性能消耗高。

4,数据交互的时候。因为框架设计的不合理或者sql语句的不合理常常导致 一个页面请求要多次打开数据库,这样也很耗费性能。

5 ,很多零碎的点一时想不起来了.

二,一些常见的网站性能优化手段.

1,建立本地数据缓存,可以采用脚本建立脚本缓存。当然缓存的数据一定不要太大避免直客户内存挤爆。

2,对于一些数据处理比较大的项目建议采用后台服务来处理数据计算.尽量避免页面请求的时候还需要做数据计算.

3,分布式缓存和服务器本地缓存联合来用.不要所有不必须的数据都往分布式缓存中扔.

4,欢迎补充,指点

之前做web性能优化的一些个人心得的更多相关文章

  1. web性能优化之--合理使用http缓存和localStorage做资源缓存

    一.前言 开始先扯点别的: 估计很多前端er的同学应该遇到过:在旧项目中添加新的功能模块.或者修改一些静态文件时候,当代码部署到线上之后,需求方验收OK,此时你送了一口气,当你准备开始得意于自己的ma ...

  2. 关于WEB 性能优化 (摘抄)

    压缩源代码和图片 JavaScript文件源代码可以采用混淆压缩的方式,CSS文件源代码进行普通压缩,JPG图片可以根据具体质量来压缩为50%到70%,PNG可以使用一些开源压缩软件来压缩,比如24色 ...

  3. Web性能优化系列

    web性能优化之重要,这里并不打算赘述.本系列课程将带领大家认识.熟悉.深刻体会并且懂得如果去为不同的站点做性能优化 同时,本系列将还会穿插浏览器兼容性相关问题的解决方案,因为在我看来,兼容性同样属于 ...

  4. 移动web性能优化笔记

    移动web性能优化 最近看了一些文章,对移动web性能优化方法,做一个简单笔记 笔记内容主要出自 移动H5前端性能优化指南和移动前端系列——移动页面性能优化

  5. web性能优化 来自《web全栈工程师的自我修养》

    最近在看<web全栈工程师的自我修养>一书,作者是来自腾讯的前端工程师.作者在做招聘前端的时候问应聘者web新能优化有什么了解和经验,应聘者思索后回答“在发布项目之前压缩css和 Java ...

  6. Web 性能优化:Preload与Prefetch的使用及在 Chrome 中的优先级

    摘要: 理解Preload与Prefetch. 原文:Web 性能优化:Preload,Prefetch的使用及在 Chrome 中的优先级 作者:前端小智 Fundebug经授权转载,版权归原作者所 ...

  7. Web 性能优化:21 种优化 CSS 和加快网站速度的方法

    这是 Web 性能优化的第 4 篇,上一篇在下面看点击查看: Web 性能优化:使用 Webpack 分离数据的正确方法 Web 性能优化:图片优化让网站大小减少 62% Web 性能优化:缓存 Re ...

  8. Web 性能优化: 图片优化让网站大小减少 62%

    摘要: 压缩各种格式的图片. 原文:Web 性能优化: 图片优化让网站大小减少 62% 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 这是 Web 性能优化的第二篇,上一篇在下面看点 ...

  9. Web 性能优化: 使用 Webpack 分离数据的正确方法

    摘要: Webpack骚操作. 原文:Web 性能优化: 使用 Webpack 分离数据的正确方法 作者:前端小智 Fundebug经授权转载,版权归原作者所有. 制定向用户提供文件的最佳方式可能是一 ...

随机推荐

  1. php框架Symfony资料

    1.http://snippets.symfony-project.org/snippets/tagged/criteria/order_by/date 2.Propel API: http://ap ...

  2. OpenCV2.3.1中tbb_debug.dll is missing的解决办法

    方法1:        将\opencv\build\common\tbb\ia32目录下的tbb.dll复制改名为tbb_debug.dll  方法2:        若方法1失效,请将\openc ...

  3. HW7.6

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  4. HDU3966-Aragorn's Story(树链剖分)

    第一道树链剖分. 早就想学..一直懒.. 感觉还是比较简单的. 主要是要套其他数据结构,线段树大概还好,平衡树之类的肯定就跪了. http://blog.csdn.net/acdreamers/art ...

  5. JavaScript(十一) HTML DOM - 改变CSS

    HTML DOM 允许 JavaScript 改变 HTML 元素的样式. A.改变 HTML 样式 如需改变 HTML 元素的样式,请使用这个语法: document.getElementById( ...

  6. 使用ApplicationLoader中出现报错:The IPA is invalid. It does not inlude a Payload directory

    问题处理方法: 1.将achieve的.app后缀的软件包放在一个payload的文件夹中 2.压缩该文件夹,改变.zip后缀为.ipa 3.使用applicationLoader上传该文件  

  7. ASP.Net Core-依赖注入IoC

    一.Ioc IoC全称Inverse of Control,控制反转. 类库和框架的不同之处在于,类库是实现某种单一功能的API,框架是针对一个任务把这些单一功能串联起来形成一个完整的流程,这个流程在 ...

  8. Central Authentication Service

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  9. 使用CATransition实现页面的“从左向右” “从右向左”的动画

    -(void)initView{ UISwipeGestureRecognizer *left_gesture=[[UISwipeGestureRecognizer alloc]initWithTar ...

  10. ORM之二:核心接口与扩展操作

    一.数据库提供者接口 /// <summary> /// 数据库提供者 /// </summary> public interface IDbProvider : IDispo ...