优化

SQL优化:

  避免select*查询多余的字段;

  对经常查询的字段做索引;

  尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃索引而导致全表扫描

  选择合适的存储引擎,MyISAM适合于一些需要大量查询的应用,但是对于大量写操作不是特别好,甚至你只需要update一个字段,整个表就会锁起来,而别的进程,就算是读进程都无法操作直到读操作完成,另外,MyISAM对于SELECT COUNT(*)是很快的;InnoDB支持“行锁”,在写操作多的时候,会占优势,另外,InnoDB还支持事务

代码优化:

  尽量减少对变量的重复计算:

    对方法的调用,即使方法中只有一句语句,也是有消耗的,包括创建栈帧、调用方法时保护现场、调用方法完毕时恢复现场等

  使用数据库连接池和线程池:

    这两个池都是用于重用对象的,前者可以避免频繁地打开和关闭连接,后者可以避免频繁地创建和销毁线程

  及时关闭流:

    Java编程过程中,进行数据库连接、I/O流操作时务必小心,在使用完毕后,及时关闭以释放资源。因为对这些大对象的操作会造成系统大的开销,稍有不慎,将会导致严重的后果。

服务器优化:

  采用集群,将服务器的压力分散开来;

  优化tomcat参数,主要是优化连接配置,关闭dns查询

原文地址:https://www.cnblogs.com/roxy/p/8079836.html