版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_34122324/article/details/83219776
1.数据库I/O方面硬件性能
最有可能影响性能的是磁盘和网络吞吐量。解决办法:
- 扩大虚拟内存,并保证有足够可以扩充的空间
- 把数据库服务器上的不必要服务关闭掉
- 把SQL数据库服务器的吞吐量调为最大
2.调整数据库
- 若对该表的查询频率比较高,则建立索引。
- 分区(如MySQL,按时间分区)
- 尽量使用固定长度字段和限制字段长度(如 varchar(10))优势:
降低物理存储空间
提高数据库处理速度
附带校验数据库是否合法功能
3.使用存储过程
应用程序的实现过程中,能够采用存储过程实现的对数据库的操作尽量通过存储过程来实现。
因为存储过程是存放在数据库服务器上的一次性被设计、编码、测试,并被再次使用,需要执行该任务的应用可以简单地执行存储过程,并且只返回结果集或者数值。
这样不仅可以使程序模块化,同时提高响应速度,减少网络流量,并且通过输入参数接受输入,使得在应用中完成逻辑的一致性实现。
4.SQL语句方面
建立查询条件索引仅仅是提高速度的前提条件,响应速度的提高还依赖于对索引的使用。不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。
- 优化sql语句,减少比较次数
- 限制返回条目数(mysql中使用limit)
5.Java方面
- 尽可能的少创造对象
- 合理摆正系统设计的位置。大量数据操作,和少量数据操作一定是分开的。
- 合理利用内存,有的数据要缓存。让数据流起来,而不是全部读到内存再处理,而是边读取边处理。