2014年3月20日
摘要: 字符串是软件开发中最为重要的对象之一。通常,字符串对象或其等价对象(如char数组),在内存中总是占据了最大的空间块。因此如何高效地处理字符串,必将是提高系统整体性能的关键所在。1.String对象及特点String对象是Java语言中重要的数据类型,但它并不是Java的基本数据类型。在C语言中,对字符串的处理最通常的做法是使用char数组,但这种方式的弊端是显而易见的,数组本身无法封装字符串操作所需的基本方法。而在Java语言中,String对象可以认为是char数组的延伸和进一步封装。Java中String类,它注意由3部分组成:char数组,offset偏移量,String的长度。cha 阅读全文
posted @ 2014-03-20 23:20 梦之秋泪 阅读(916) 评论(0) 推荐(2) 编辑
  2014年3月19日
摘要: 存在性能问题的系统,十之八九是由某一系统瓶颈导致的。只要找到该瓶颈,分析瓶颈的形成原因,对症下药i,使用合理的方法解决系统瓶颈,就能从根本上提升性能。所以,系统性能优化的最主要目的就是查找并解决性能瓶颈问题。但同时值得注意的是,性能优化往往会涉及对原有实现进行较大的修改,因此,很难保证这些修改不引入新的问题。所以,在性能优化前,需要对性能优化的目标,方法进行统筹的安排。1.优化的一般步骤 对软件系统进行优化,首先需要要有明确的性能目标,清楚地指出优化的对象和最终目的。其次,需要在目标平台上对软件进行测试,通过各种监控和统计工具,观测和确认当前系统是否已经达到相关目标,若已经达到,则没有必要再. 阅读全文
posted @ 2014-03-19 00:15 梦之秋泪 阅读(665) 评论(0) 推荐(0) 编辑
  2014年3月17日
摘要: 为了提升系统性能,我们可以从系统的各个角度和层次对系统进行优化。除了最常见的代码优化外,在软件构架上,JVM虚拟机层,数据库及操作系统层面都可以通过各种手段进行调优,从而在整体上提升系统的性能。1.设计调优设计调优处于所有调优手段的上层,它往往需要在软件开发之前进行。在软件开发之处,软件设计构架师就应该评估系统可能存在的各种潜在问题,并给出合理的设计方案。由于软件设计和构架对软件整体质量有决定性的影响,所以,设计调优对系统性能的影响也是最大的。如果说,代码优化,JVM优化都是对系统微观层面上“量”的优化,那么设计优化就是对系统在宏观层面上“质”的优化。设计优化的一大显著特点是,它可以规避某一. 阅读全文
posted @ 2014-03-17 21:36 梦之秋泪 阅读(711) 评论(0) 推荐(0) 编辑
  2014年3月5日
摘要: 数据库学习(主要oracle)这个是我学习计划比较不确定的最后完成结果部分,我本人对于oracle有一定的学习兴趣,但公司使用oracle数据库的产品(项目)比较少,单纯学习而没有具体实践,我觉得学习的成果不是很好表现,学习为公司带来的价值也不能体现。《oracle11g数据库管理员指南》这是一本比较基础的书籍,注重基础也是我学习的习惯,必须深入学习。《品悟oracle性能优化》这是一本以数据库性能调优作为切入点,通过对案例实际讲解,比较贴近工作。先拿这本书作为我的优化手册,里面内容较多,在以后的学习工作中会一直学习下去,读一遍再读一遍。还有就是我们内网上有分享的炼数成金的oracle相关网络 阅读全文
posted @ 2014-03-05 23:38 梦之秋泪 阅读(820) 评论(0) 推荐(0) 编辑
  2014年1月2日
摘要: 处理百万级以上的数据提高查询速度的方法:1.应尽量避免在 where 子句中使用!=或操作符,否则将引擎放弃使用索引而进行全表扫描。2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=04.应尽量避免在 where 子句中使用 or 来 阅读全文
posted @ 2014-01-02 13:50 梦之秋泪 阅读(615) 评论(0) 推荐(1) 编辑
  2013年11月17日
摘要: 五 分表技术 分表技术有水平分割和垂直分割水平分割:当一张越来越大时候,即使添加索引还慢的话,我们可以使用水平分表,以qq用户表简单举例来具体的说明一下水平分表的操作思路.如我们在一个互联网上注册一个帐号,帐号很多,可能帐号表不止一个(如table1,table2,table3)。可以在我们进行注册的时候生成一个标识,然后对这个标识通过程序逻辑进行处理(如生成的是一个随机整数,对该整数进行除3求余的方式,如余1放到table1,余2放到table2,余0放到table3),放到相应的表中。访问该信息的时候,也通过注册的随机标识处理知道在哪个表,在相应的表中进行检索即可。如下一个php代码:首先 阅读全文
posted @ 2013-11-17 19:00 梦之秋泪 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 年初,便制定计划,今年主要学习数据库的相关优化,过程中既有sybase数据库,也有mysql,oracle的学习。以下除特殊说明外,其他涉及优化不针对某一具体数据库,现总结相关的设计调优如下,总体我分以下几个方面介绍我理解的数据库设计:1.数据库(表,字段)设计2.反规范3.数据库设备使用4.索引使用优化5.分表技术6.读写分离7.存储过程一 数据库(表,字段)设计 这个主要是一个整体的设计,如我们公司的XX数据库,采用在审和审结库分离,每类案件类型拥有自己独立的数据库作为在审库,所有审结案件放到一个数据库中作为审结库。而在XX数据库中,则采用一个业务库包含所有案件类型的在审和审结记录。当然这 阅读全文
posted @ 2013-11-17 18:43 梦之秋泪 阅读(308) 评论(0) 推荐(0) 编辑