0

我有一个包含一些功能的应用程序(MongoDB + Hibernate OGM)。我想针对这些特定功能测量某些操作(搜索、添加、删除等)的持久性技术的性能。

因为我正在测量这些功能的性能,所以我认为最好的方法是测量应用程序内部的操作,而不是外部的操作。我不太确定这种方法是否正确。

例如,我现在做的是:

long startTime = System.currentTimeMillis();
personDao.persist(persons.get(i));
long endTime = System.currentTimeMillis() - startTime;
System.out.println("End:" + endTime);

但是,这样衡量公平吗?有人有任何衡量持久性技术性能的技巧吗?基于此,我想将其与其他持久化技术(如 MySQL + Hibernate ORM 或其他 NoSQL 技术如 Cassandra)进行比较。

4

1 回答 1

1

查看此答案以了解有关在 Java 中编写微基准测试的更多信息。然后我建议看一下JMH来编写基准测试。

于 2015-02-23T07:47:36.813 回答