hibernate的二级缓存机制有用吗?用的是SSH + oracle 架构, 应该选用什么优化查询方案比较好,
还有发现log4j表里面有这句话,是不是放弃了 hibernate的缓存机制?
之前的人为什么要这么做? 难道是hibernate的cache不好用吗?
`
log4j.logger.org.hibernate.cache=ERROR
`
其他的log4j配置:
log4j.logger.org.apache.commons=ERROR
log4j.logger.org.apache.struts2=info
log4j.logger.org.springframework=info
log4j.logger.org.hibernate=INFO
log4j.logger.com.opensymphony.xwork2=info
log4j.logger.org.hibernate.cache=ERROR
log4j配置和hibernate没关系。
查询慢要先从数据库本身下手调优。
数据库里是否有和查询sql条件有匹配的索引,没有的话建索引。
如果是写入读取都很大的库,做读写分离。
数据量极大(亿以上)的情况下,建议考虑分表。
如果是多点高可用方式部署的系统,代码里加缓存要使用redismemcached这样的中间件。