系统性能调优
文章平均质量分 78
本专栏文章将从索引,sql语句,循环代码,字符串处理等方面分享笔者在系统性能调优方面的心得。希望能够帮助大家,更希望我们能相互学习共同进步。
郗晓勇
这个用户不懒,但是依然什么也没有留下。
展开
-
系统性能调优(6)----Java异常处理性能优化
执行一个catch代码块和抛出一个异常花费是很高的,这个过程中的性能损耗主要是由于当创建一个异常时要获得线程栈的一个快照。抛出异常首先要创建一个新的对象Throwable类的构造函数调用名为fillInStackTrace的方法,fillInStackTrace方法检查堆栈,收集调用跟踪信息。由于在处理过程中创建了一个新的对象,所以说只要有异常被抛出,JVM就必须调整调用堆栈,系统资源开销也就增大原创 2013-06-12 21:09:34 · 9259 阅读 · 5 评论 -
系统性能调优(5)----Java循环与字符串代码优化
在系统性能优化的时候循环和字符串处理一直是非常值得注意的地方。从心态上我们一定不能把自己的眼界放在十次或者是百次循环的层次上,也不能把自己要处理的字符串当做是有十个二十个字符。每次遇到循环都要假定这个循环是上万次的,每次要处理的字符串的时候一定要告诉自己这个字符串将来有可能是很大的。不要等到数据量真的达到十万、百万的级别之后再采取处理,那样的话成本的消耗就太大了。本文将介绍关于Java代码中循环和原创 2013-06-05 16:27:21 · 4502 阅读 · 8 评论 -
系统性能调优(4)----数据库常见索引
1、B树索引这是最常见的索引,几乎所有的关系型数据库系统都支持B树结构的索引,也是被最多使用的,其树结构与二叉树比较类似,根据行id快速定位到行。大部分数据库默认建立的索引就是这种索引。B树索引在检索高基数数据列(高基数列是指该列有很多不同的值,该列所有不同值的个数之和与该列所有值的个数之和的比成为列基数)时提供了比较好的性能,B树索引是基于二叉树的,由分支块和叶块组成。在树结构中,位于最底层的块原创 2013-06-01 15:19:49 · 2785 阅读 · 2 评论 -
系统性能调优(3)----数据库索引优化
索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。其实道理很简单,比如我们要从字典中查找一个字,那么这个字典就是我们所要面对的数据库,索引就好比是字典前面的拼音或者部首索引表,当需要查询一个字的时候我们首先去检索拼音或者部首索引表,然后再去字典中查找具体的位置,这样我们就加快数据库的查询速度。索引分为聚簇索引和非聚簇索引两种,聚簇索引是按照数据存放的物理位原创 2013-05-31 20:24:07 · 3618 阅读 · 3 评论 -
系统性能调优(2)----数据库设计优化
1、逻辑设计的规范化所谓逻辑设计的规范化就是使得数据库的逻辑更加合理。说白了就是我们平时所说的三范式。具体内容可以参考笔者之前的文章。现在总结如下:第一范式:原子不可再分第二范式:只能依赖主键第三范式:不能依赖其他其实三范式说到底就是方便查找、防止冗余,比如第一范式中原子性,就是把信息单元化,方便用户的查询,试想如果数据不容易查询还要数据库干什么?第二范式和第三范式是从不同的方面来描述其他非主键的原创 2013-05-31 10:45:05 · 3224 阅读 · 2 评论 -
系统性能调优(1)----步骤与思路
概念(来自度娘)系统优化原来是系统科学(系统论)的术语,现在常用作计算机方面的术语。它尽可能减少计算机执行的进程,更改工作模式,删除不必要的中断让机器运行更有效,优化文件位置使数据读写更快,空出更多的系统资源供用户支配,以及减少不必要的系统加载项及自动启动项。当然优化到一定程度可能略微影响系统稳定性,但基本对硬件无害。系统优化的一般步骤分为五步,不同的公司可能会省略其中的部分文档,但是大体的思路是原创 2013-05-28 10:44:02 · 4557 阅读 · 5 评论