【java – 使用350列搜索表和使用25列搜索表之间的性能差异】教程文章相关的互联网学习教程文章

java – 为什么执行Mockito mocks的性能如此不稳定?【代码】

任何人都有一个解释,甚至更好的建议解决方案,为什么执行Mockito嘲笑所花费的时间是如此不稳定?我能想出的最简单的SSCCE如下:import static org.mockito.Mockito.mock;public class TestSimpleMockTiming {public static final void main (final String args []){final Runnable theMock = mock (Runnable.class);int tookShort = 0;int tookMedium = 0;int tookLong = 0;int tookRidiculouslyLong = 0;long longest = 0;for (int...

Java:空终结器也会对性能产生影响吗?【代码】

我知道Java中的终结器有严重的性能问题 – 有关详细信息,请参阅此主题:Why do finalizers have a “severe performance penalty”? 现在我有一个场景,我想禁止某个类的子类有终结器. AfaIk,这可以通过添加最终的空终结器来完成:protected final void finalize() throws Throwable {}这样一个空的终结器是否已经触发了已知的性能问题?或者GC会将其检测为空终结器并将对象视为普通的非终结对象吗? 原因是使用自己的受控终结过程的...

Java – 对象池与新对象实例化的性能【代码】

我目前正在尝试为竞赛构建一些代码执行优化,并且正在研究ObjectPool模式以支持对象重用而不是新的对象实例化. 我已经整理了一个small project(以及only test class)来调查我看到和不理解的一些事情. 我在做什么: >使用new()和Pool.get()操作比较5 000 000次迭代的非常简单对象的创建>玩三个轴,运行和不运行所有测试: >在进行测量之前运行循环一次的“预热”>将新创建的对象分配给局部变量并将其用于某些计算>使用fixed vs random...

【JAVA】java性能分析之线程DUMP分析【图】

系统上线后,系统可能会出现一些迟钝、卡死现象,这个时候就需要我们对系统进行性能方面的优化。本文将大概介绍一下,性能问题的解决思路,以及一次应用系统操作缓慢的分析实操。 一、定位问题方向 首先,查看服务器CPU使用率,磁盘IO以及内存使用情况 1.占用内存几乎等于JVM参数中分配的内存大小,而且长时间处于这种状态的话,应该是程序中可能存在内存泄漏的问题,或者JVM参数设置不合适,从这方面入手。这方面要用到堆DUMP来分...

java – 使用JOIN FETCH查询性能问题【代码】

我有hibernate查询性能的问题,我无法弄清楚.在下面的代码片段中,我需要具有至少一个映射和过滤映射的选择实体.我正在使用FETCH JOIN来加载仅过滤的映射.但在这种情况下,我的查询存在性能问题. Hibernate说警告日志:org.hibernate.hql.ast.QueryTranslatorImpl– firstResult/maxResults specified with collection fetch; applying inmemory!当我省略FETCH JOIN并且只剩下JOIN查询时很快.但结果我将所有映射加载到实体,这对我来说...

在性能方面,是一个比java中的自定义类更好还是更差的双精度数组?

我在Java中编写了一个简单的GJK算法实现(凸形碰撞),它涉及到3D矢量的大量简单计算.在性能与可读性方面,最好将点存储为double [3]并且有一大堆静态方法来处理它们(加,减,点,交叉,否定等)或者使用带有方法的类包含在? 双精度数组的问题在于,如果使用专门的方法,则需要进行简单的减法(例如)多个循环,或者如果它们是硬编码的,则代码变得非常长.Point对象使代码更多更具可读性,但是我认为这不是一个微不足道的性能开销值得吗?解决方法...

java – Android上的性能测量

我正在寻找衡量我的Android应用程序性能的方法.特别是在调用特定方法时.显然,我可以使用时间(之前的时间)来评估速度,因此它的执行速度有多快. 有谁知道其他任何技术?即显示使用了多少处理器. 提前感谢您的回复.解决方法:您可以在as kabuko mentioned中使用Traceview工具,请注意此工具也是accessable from Eclipse并且非常易于使用: 运行App,进入DDMS视图,选择要跟踪的过程,然后单击“Start Method Profiling”按钮(带有红点的树形...

java – OOP设计与智能手机的性能

我推荐这本书:由Mario Zechner和Robert Green开始的Android 4游戏开发,适用于Android游戏的初学者. 该书在第192页说明: 方法调用在Dalvik中具有比在其他VM中更大的相关成本.使用静态方法,如果你可以,因为那些表现最好.静态方法通常是被视为邪恶,很像静态变量,因为它们促进了糟糕的设计,所以试试保持您的设计尽可能干净.也许你应该避免吸气者和塞特斯也是.直接字段访问速度比方法快三倍没有JIT的调用,使用JIT快七倍.不过,在删除所...

java – 字符串连接的性能如何?【代码】

以下情况:我有很多日志语句,只有在调试模式下才能被执行. 我有两个选项来实现这个: 一个public void log(String message){if(debug) doLog(message); }还有很多这样的陈述:log(something.toString() + "somelogmessage");乙public void log(message){doLog(message); }还有很多这样的陈述:if(debug) log(something.toString() + "somelogmessage");虽然A更好地读取并产生更少的代码,但如果debug为false,则B避免字符串连接. 是否...

Java String.split的替代方案,以获得更好的性能【代码】

在通过从csv / tab分隔文件导入添加数据的过程中,我的代码消耗了大量时间来上传数据.有没有其他选择以更快的方式做到这一点?这是我用来分割数组中的字段的代码.//Here - lineString = fileReader.readLine()public static String [] splitAndGetFieldNames(String lineString ,String fileType) {if(lineString==null || lineString.trim().equals("")){return null;}System.out.print("LINEEEE " + lineString);String patt...

Java 8并行流的性能陷阱

并行化流被分成多个块,每个块独立处理,结果在最后汇总。 CPU密集型代码如下: private long countPrimes(int max) { return range(1, max).parallel().filter(this::isPrime).count(); } private boolean isPrime(long n) { return n > 1 && rangeClosed(2, (long) sqrt(n)).noneMatch(divisor -> n % divisor == 0); } countPrimes 计算1到最大值之间的素数的数量。数字流由range方法创建,切换到并行模式,过滤掉非素...

java – 使用350列搜索表和使用25列搜索表之间的性能差异【代码】

我目前正在做一些hibernate性能测试.我的要求是在包含800万行和350列的表的特定列中搜索数据.目前,我没有访问该数据库的权限,但是,我现在使用的测试数据库也包含8百万. 我的问题是,当搜索包含350列的表中的数据时,扫描速度与包含25列的表中的扫描速度有显着差异吗? 顺便说一句,我检查数据的方式是:sessionFactory.getCurrentSession().createSQLQuery("SELECT COL_5 from MY_TABLE where COL_5='" + theColValuePassedFromParame...

高性能Java解析器实现过程详解【代码】【图】

如果你没有指定数据或语言标准的或开源的Java解析器, 可能经常要用Java实现你自己的数据或语言解析器。或者,可能有很多解析器可选,但是要么太慢,要么太耗内存,或者没有你需要的特定功能。或者开源解析器存在缺陷,或者开源解析器项目被取消诸如此类原因。上述原因都没有你将需要实现你自己的解析器的事实重要。 当你必需实现自己的解析器时,你会希望它有良好表现,灵活,功能丰富,易于使用,最后但更重要是易于实现,毕竟你...

可扩展,低开销,高性能的Java持久性框架

我期待建立一个网站/应用程序.类模型大约有100个对象,并不是特别复杂. 需要构建网站以处理大约30 000个并发用户,但它应该能够处理更多. 我想使用现成的持久性框架,而不是编写我自己的jdbc来访问数据库. 我别无选择,只能使用关系数据库. 我希望它有一些形式的缓存,并且还希望能够自定义sql,因为这通常是性能调优所必需的. 我应该使用什么持久性框架的任何建议? 更新:谢谢大家.在这种情况下,我认为手动编写sql代码的能力胜过.如果您...

Java:低延迟性能测量

衡量低延迟Java应用程序性能的过程是否与测量非低延迟Java应用程序性能的过程不同?如果是,如何,是否有用于测量低延迟性能的特定工具? 编辑:例如这是一条具体的信息:http://www.artima.com/forums/flat.jsp?forum=121&thread=212810解决方法:与低延迟时间的主要区别在于 >每微秒都很重要.您将了解每个微秒的成本,每年的成本以及减少每微秒的价值.>您希望测量最高99%甚至99.99%的延迟. (最差1%或0.01%)>你想要一个快速时钟,通...