【Windows/Linux环境下使用Java VisualVM进行Java程序性能分析与监视】教程文章相关的互联网学习教程文章

java – List和Set之间的性能和内存分配比较

我想知道List和Set在性能,内存分配和可用性方面的比较. 如果我没有要求在对象列表中保持唯一性,则既不需要维护插入顺序,我可以交替使用ArrayList和SortedSet / HashSet吗?直接使用Collections类而不是列表/集合会不会很好? 附:我也不需要列表或设置java提供的特定功能.我只使用List / Set而不是Array,因为它们可以动态增长而无需额外的编程工作.解决方法:如果您不关心排序,并且不删除元素,那么它实际上归结为您是否需要在此数据...

c# – Windows上的Java需要记录CPU负载和类似的OS特定性能信息【代码】

在Windows机器上运行的Java库需要记录有关操作系统的信息,如CPU负载,JVM等占用的内存,我非常肯定Java本身无法获取,因为它是特定于操作系统的. 此库的日志中需要此信息,以便向客户端指出某些操作失败,因为库无法获取足够的资源. 不可能选择JVM,即我们不能要求我们的客户端应该使用实现Windows操作系统特定功能的特定JVM. 是否有可以通过JNI使用的Windows库(DLL)或API? 我们也可以在C或C#中实现DLL,我需要在哪里查看如何才能最有效地...

centos – 性能不佳的Java应用程序与性能不佳的服务器

这是一个非常通用的问题,但它对我来说越来越频繁.我想尝试确定这个通用案例的适当行动方案,因为我认为它可能使我和其他系统管理员在将来受益.所有情况下的共性都是java.我在这里问这个问题而不是堆栈溢出的原因是这是一个系统管理员问题.我觉得这里非常合适. 一位用户来找我说“我的应用程序非常慢.你给我的服务器性能很差.”该服务器可以是裸机,OpenVZ或KVM.在所有情况下,操作系统都是CentOS 6.当用户告诉我这一点时,他们指的是页...

java – Linux JVM的JAX WS Server实现性能问题?【代码】

我遇到了一个非常奇怪的问题.内置的JAX WS服务器实现在Linux机器上运行速度慢100倍,然后在Mac OS X或Windows上运行. 我创建并共享了一个JMH测试:https://github.com/Andremoniy/linuxjvmjaxwstest 基本上它执行以下操作: >使用一个SOAP方法启动JAX WS: endpoint = Endpoint.publish(“http://localhost:8888/”,new FooServiceImpl());>对此方法执行客户端请求: String result = state.client.foo(state.foo); 在具有2核英特尔...

Windows 2003与Windows 2008中的Java Web应用程序性能

我有一个在Tomcat上运行的Java Web / SIP应用程序.该应用程序的大小适合在Windows 2003上运行1000个并发会话,在虚拟化环境中具有4 GB RAM和4个vCPU. 现在应用程序迁移到Windows 2008,Tomcat仍然是32位,应用程序使用32位Java编译,因此是32位应用程序.有了这个设置我2008年的性能.测试与使用Windows 2003时的工作方式不同.CPU利用率达到峰值,许多调用都被删除. 我在这里有以下问题. >在64环境中运行32位应用程序会占用额外的CPU /内存...

java – MappedByteBuffer.asFloatBuffer()与内存中的float []性能【代码】

假设您正在对一大组大型浮点矢量进行一些计算,例如:计算每个的平均值:public static float avg(float[] data, int offset, int length) {float sum = 0;for (int i = offset; i < offset + length; i++) {sum += data[i];}return sum / length; }如果您将所有向量存储在内存中的float []中,则可以按如下方式实现循环:float[] data; // <-- vectors here float sum = 0; for (int i = 0; i < nVectors; i++) {sum += avg(data, i...

java中的未使用的导入会影响性能并消耗内存吗?【代码】

参见英文答案 > Does unused import and objects have an performance impact 5个 import java.io.*; class Myclass {//Some programming code that does not call any java io package methods or variables }该程序是否比没有未使用的导入程序占用更多内存甚至更糟糕地影响软件/应用程序的性能?解决方法:不,导入是编译时功能(它们在编译代码中没有意义).它们不会影响运行时行为.

使用Java Visual VM进行性能分析时,CPU /内存选项卡不显示

当我尝试使用Java VisualVM配置我的Java应用程序时,线程,CPU和内存分析选项卡不会显示.除了“-Djava.library.path = lib / native”之外,我的程序没有任何JVM参数,是否需要使用特定的参数来启用性能分析? 其他信息: >使用Netbeans构建>使用LWJGL解决方法:这样就可以从未答复列表中删除: 通过运行与JVM相同版本的VisualVM(在本例中为64位)解决了该问题.成功的分析可以是特定于版本的.

在什么情况下Java性能会随着内存的增加而降低?

我们正在DEV环境中加载测试Java 1.6应用程序. JVM堆分配为2Gb,-Xms2048m -Xmx2048m.在负载测试下,应用程序运行流畅,从不使用超过1.25Gb的堆,垃圾收集完全正常. 在我们的UAT环境中,我们使用相同的参数运行负载测试,唯一的区别是JVM,它分配了4Gb,-Xms4096m -Xmx4096m,否则,硬件与DEV完全相同.但是在负载测试期间,性能非常糟糕,应用程序几乎吞噬了整个堆,并且垃圾收集运行猖獗. 我们一遍又一遍地进行这些测试,消除了可能影响性能的所有...

Beanshell vs JSR223 vs Java JMeter脚本:性能关闭你一直在等待!【图】

有几个选项可用于执行自定义JMeter脚本并扩展基线JMeter功能。查看最流行的扩展机制,比较性能并分析哪一个是最好的。 这是乐队之战,JMeter风格。 Beanshell V. JSR223 V. Java Request Sampler 在我们之前的帖子中, JMeter Performance和Tuning Tips ( 由fantastik Philipe Mouwad编写) 我们建议使用JSR 223 + Groovy进行脚本编写。这是最好的选择,因为Groovy脚本可以编译成本机Java代码(假设满足一些要求),因此...

Java性能优化之JVM内存模型

JVM内存模型首先介绍下Java程序具体执行的过程:Java源代码文件(.java后缀)会被Java编译器编译为字节码文件(.class后缀);由JVM中的类加载器加载各个类的字节码文件,加载完毕之后,交由JVM执行引擎执行在整个程序执行过程中,JVM会用==一段空间==来存储程序执行期间需要用到的数据和相关信息,这段空间一般被称作为==Runtime Data Area(运行时数据区)==,也就是我们常说的JVM内存;因此,在Java中我们常常说到的内存管理就是针对...

分析 - 相关标签