我不明白这个性能问题

时间:2011-05-30 20:28:30

标签: performance grails hardware intel ubuntu-10.10

我正在使用grails运行一个进程,将信息从电子表格加载到数据库中。

我的本​​地机器有4GB RAM和iCore7 1.73GHZ处理器 服务器机器有2GB RAM和Intel E7400 2.8GHZ双核心 两者都配有500GB硬盘

您可以在下面看到将电子表格中的不同信息加载到数据库中的时间(以秒为单位)。

SERVER UBUNTU 9.04 64BIT

LOAD DICTIONARY TABLES STARTING...
LOAD DICTIONARY TABLES : TOTAL Processing time = 5.31
2011-05-30 11:49:39,210 [main] DEBUG dataImport.CatalogueDataLoader - LOADING CATALOGUE...

2011-05-30 11:49:39,582 [main] DEBUG dataImport.CatalogueDataLoader - CATALOGUE LOAD : TOTAL Processing time 0.371 


LOCAL UBUNTU 10.10 64BIT

LOAD DICTIONARY TABLES STARTING...
LOAD DICTIONARY TABLES : TOTAL Processing time = 32.641
2011-05-30 12:36:38,875 [main] DEBUG dataImport.CatalogueDataLoader - LOADING CATALOGUE...

2011-05-30 12:36:40,214 [main] DEBUG dataImport.CatalogueDataLoader - CATALOGUE LOAD : TOTAL Processing time 1.338 

CATALOGUE LOAD : TOTAL仅适用于电子表格的1行,但我必须加载约7K行,因此时差非常重要。在我的机器上花了超过1小时,在服务器只需10分钟。我觉得这没有意义。

有人可以帮助我理解这个并且可能会建议一些解决方案吗?

2 个答案:

答案 0 :(得分:5)

关于你在加载过程中可能做的事情,你的问题没有太多细节,但我打赌你没有刷新/清除hibernate会话并且正在为所有人使用相同的hibernate会话您要导入的项目。我有blog post for investigating batch import performance in grails你可能会得到一些里程数。

答案 1 :(得分:0)

我可以建议profiler plugin吗?