优化专题

Posted i177268

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优化专题相关的知识,希望对你有一定的参考价值。

代码优化

一、代码结构层次的优化(目的:更加方便代码的维护--可维护性,可读性)
1.代码注释(代码规范)
2.工具类的封装(方便代码的维护,使代码结构更加清晰不臃肿,保证团队代码质量一致性)
3.公共部分的提取
二、代码性能的优化(目的:使程序的性能最优化)
1.使用一些性能比较高的类(bufferInputStream)
2.缓存区块的大小(4k或8k)
3.公共部门的提起
4.通常要使用StringBuffer代替String加号拼接
5.单线程应尽量使用HashMap,ArrayList,因为HashTable,Vector使用了同步机制,降低了性能
6.在Finally块中关闭流,断开连接,释放资源

Sql优化

1.外键必须加索引
2.避免在where子句中对有索引的字段进行运算,这会导致索引失效,从而进行全表扫描
3.在where及order by 涉及的列上建立索引,要尽量避免全表扫描
4.在设计表时要避免表中字段出现null的情况,通常要为其设置默认值
5.避免在查找时放弃使用索引而进行全表扫描
6.select 语句中避免使用*,只查询需要返回的字段,这样可以减少oracle解析sql语句的时间
7.用not exists 替换not in 操作符,用exists替换in

Hibernate优化

在处理大数据量时,会有大量的数据缓冲保存在Session的一级缓存中,这缓存太大时会严重影响性能,所以在使用Hibernate处理大数据量时,可以使用Session.clear()或者Session.evict(object),在处理过程中,清楚全部的缓存或者清楚某个对象。
通过使用Hibernate的一级缓存,二级缓存,查询缓存等来提高性能。
Hibernate可以通过设置hibernate.jdbc.fetch_size,hibernate.jdbc.batch.size等属性,对Hibernate进行优化。Batch Size是设定对数据库进行批量删除,批量更新和批量插入的时候的批次大小,Batch Size越大和数据库交互的次数就越少,速度就越快,但也不要无限的大下去,通常选择一个合适的值,如100条。其次,我们在进行大批量的导入操作时,可以结合batchsize进行分批量提交,从而达到最优效果。

以上是关于优化专题的主要内容,如果未能解决你的问题,请参考以下文章

优化 C# 代码片段、ObservableCollection 和 AddRange

测试工具Jtest:用于代码优化和测试——《软件工程综合实践专题》第四次个人博客

使用 C++ 反转句子中的每个单词需要对我的代码片段进行代码优化

如何优化C ++代码的以下片段 - 卷中的零交叉

分布式技术专题「系统服务优化系列」Web应用服务的性能指标优化开发指南(JVM篇)

Unity性能优化专题—腾讯牛人分享经验 (难度1 推荐3)