我正在使用休眠,但我遇到了性能问题!
当我在本地数据库上使用它时,它非常快,但在远程数据库上非常慢(和远程数据库,我的意思是在本地网络中)!!
为什么呢?!!
我知道你会说这可能是一个懒惰的加载问题但是我已经在一个实体(没有孩子)的简单选择上进行了测试但仍然很慢,请检查出来:
var result = driver.FindElement(By.XPath("//span[@id^='order-number-'")).Text;
var result = driver.FindElement(By.XPath("//div[@id='a-column a-span7']/h5")).Text;
var result = driver.FindElement(By.XPath("//div[@id='a-column a-span7']/span[@class='a-text-bold']")).Text;
正如您可以看到一个简单的选择查询,这是我得到的结果:
本地:31毫秒
远程:356ms !!!!
这是我的配置文件:
public List<Employee> read() {
List<Employee> objects = null;
Transaction tx = null;
try {
tx = HibernateUtil.SESSION.beginTransaction();
Long start = System.currentTimeMillis();
objects = HibernateUtil.SESSION.createQuery("FROM Employee AS T ORDER BY T.id DESC").list();
Long stop = System.currentTimeMillis();
System.out.println( "Time: " + (stop - start) + "ms." );
tx.commit();
} catch (HibernateException e) {
if (tx != null)
tx.rollback();
e.printStackTrace();
}
return objects;
}
你能解释一下吗?
答案 0 :(得分:0)