小编fgl*_*lez的帖子

-XX:UseParallelGC和-XX:+ UseParNewGC之间的区别

它们是年轻一代垃圾收集的算法.

第二个(UseParNewGC)通过并发tenured generation垃圾收集自动激活(参见Java Concurrent and Parallel GC),但两个并行算法之间是否存在差异?

java jvm-arguments

80
推荐指数
3
解决办法
14万
查看次数

即使使用slf4j,你应该保护你的日志吗?

在这里帮我辩论.. :)

这里的slf4j站点http://www.slf4j.org/faq.html#logging_performance表示由于参数化日志记录,不需要日志记录保护.即不是写作:

if(logger.isDebugEnabled()) {
  logger.debug("Entry number: " + i + " is " + String.valueOf(entry[i]));
}
Run Code Online (Sandbox Code Playgroud)

你可以逃脱:

Object entry = new SomeObject();
logger.debug("The entry is {}.", entry);
Run Code Online (Sandbox Code Playgroud)

这真的没问题,或者它是否会产生(虽然更低)创建传递给trace方法的静态字符串的成本..?

java performance logging slf4j

34
推荐指数
3
解决办法
2万
查看次数

如何转储Permgen?

我想把应用服务器的Permgen转储.

我不想使用,-XX:+TraceClassLoading -XX:+TraceClassUnloading因为我不想重新启动服务器,我也不想使用jconsole.

我有任何工具jmap(用于堆转储没有找到permgen的任何选项)来获得permgen,以便我只能提供pid.

profiling jvm permgen

22
推荐指数
3
解决办法
2万
查看次数

在IntelliJ中运行ScalaTest时"无法加载Suite类"

今天我在Intellij中运行一个简单的TestKit测试时遇到了一些问题.这些测试是针对Scala代码的(我有Intellij的Scala插件)​​,它基于Ray Roestenburg的例子.

Intellij项目是使用"Maven模块"创建的,然后我将所有依赖项添加到并创建了我的项目.测试位于以下位置:

ActorBlast/src目录/测试/斯卡拉/ basicTest.scala

我基本上在测试中"右键单击"并选择"运行".我得到的是以下错误:

"C:\ Program Files\Java\jdk1.7.0_25\bin\java"-Didea.launcher.port = 7540 ...测试于下午2:29开始...无法加载Suite类.这可能是由于您的运行路径中的错误.

缺少类:BasicActorSpec java.lang.ClassNotFoundException:java.net.URLClassLoader $ 1.run(URLClassLoader.java:366)中的BasicActorSpec,java.security.AccessController上的java.net.URLClassLoader $ 1.run(URLClassLoader.java:355).位于java.lang.ClassLoader.findClass(URLClassLoader.java:354)的doPrivileged(本机方法)位于sun.misc.Launcher的java.lang.ClassLoader.loadClass(ClassLoader.java:424)$(AppClassLoader.loadClass)(Launcher.java: 308)在java.lang.ClassLoader.loadClass(ClassLoader.java:357)org.scalatest.tools.Runner $$ anonfun $ 35.apply(Runner.scala:2393)at org.scalatest.tools.Runner $$ anonfun $ 35 .apply(Runner.scala:2391)scala.collection.TraversableLike $$ anonfun $ filter $ 1.apply(TraversableLike.scala:264)在scala的scala.collection.immutable.List.foreach(List.scala:318).采集.TraversableLike $ class.filter(TraversableLike.scala:263)位于org.scalatest的org.scalatest.tools.Runner $ .doRunRunRunDaDoRunRun(Runner.scala:2391)的scala.collection.AbstractTraversable.filter(Traversable.scala:105). tools.Runner $$ anonfun $ runOptionallyWithPassFailReporter $ 2.apply(Runner.scala:1006)atg.scalatest.tools.Runner $$ anonfun $ runOptionallyWithPassFailReporter $ 2.apply(Runner.scala:1005)at org.scalatest.tools.Runner $ .withClassLoaderAndDispatchReporter(Runner.scala:2659)位于org.scalatest的org.scalatest.tools.Runner $ .runOptionallyWithPassFailReporter(Runner.scala:1005)org.scalatest.tools.Runner $ .run(Runner.scala:845). tools.Runner.run(Runner.scala)位于org.jetbrains.plugins的org.jetbrains.plugins.scala.testingSupport.scalaTest.ScalaTestRunner.runScalaTest2(ScalaTestRunner.java:144).scala.testingSupport.scalaTest.ScalaTestRunner.main(ScalaTestRunner.java:35)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.在com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)的java.lang.reflect.Method.invoke(Method.java:606)中调用(DelegatingMethodAccessorImpl.java:43)execution.application.AppMain.main(AppMain.java:120)execution.application.AppMain.main(AppMain.java:120)

进程以退出代码0结束

我无法弄清楚这意味着什么.我做了很多搜索,但似乎无法找到答案.请注意,跑步者抱怨没有找到的类是我正在尝试测试/运行的类.basicTest.scala看起来像这样:

// Testing specific imports
import org.junit.runner.RunWith
import org.scalatest.junit.JUnitRunner
import org.scalatest.{ShouldMatchers, WordSpecLike, BeforeAndAfterAll} …
Run Code Online (Sandbox Code Playgroud)

scala intellij-idea akka

21
推荐指数
6
解决办法
2万
查看次数

我如何估计一个班级的总permgen记忆消耗量?

最近,我写了一个类,在其中我发现我可以减少~10个字节/元素的内存消耗,但这只是以使代码更加复杂为代价.这使编译.class文件的大小增加了大约10KB.

我假设JVM必须将.class文件加载到内存中,因此除非至少有1000个元素,否则这些更改不会为自己付费.但是,除非类文件中额外的10KB是增加代码复杂性的唯一成本,否则该算法无法解决.

这个Oracle博客表明,permgen中的类消耗了相当多的额外内存,而不仅仅是基于.class文件 - 例如,我怀疑更复杂的代码可能需要更多的内存来优化元数据.

所以,这个问题有两个部分:

  • 如何测量特定类的实际permgen内存消耗?在运行时使用某些工具还是使用性能分析工具?
  • 有没有办法在我写作时估计课堂的permgen内存消耗?(有了一些背景知识,您可以在编写类实例时估计类实例的内存消耗;我想知道我们是否可以估计类本身的permgen内存消耗.)

Dalvik VM的类似细节将不胜感激,但我主要关注的是OpenJDK和其他"主流"JVM.

java jvm permgen

12
推荐指数
1
解决办法
1064
查看次数

如何使用JConsole远程连接到Weblogic?

我需要使用哪个URL,端口和weblogic服务器端设置?

jmx weblogic jconsole

9
推荐指数
1
解决办法
2万
查看次数

Mongoid模型警告引用的顶级常量

我有以下mongoid模型继承自Entry模型:

class Entry::Twitter < Entry

  field :retweet_count, :type => Integer, :default => 0
  field :retweeted, :type => Boolean, :default => false
  field :favorited, :type => Boolean, :default => false

  # in_reply_to_screen_name, in_reply_to_status_id_str, in_reply_to_user_id_str
  field :reply, :type => Hash

  field :from, :type => Hash # user: id_str, name, screen_name
  field :time, :type => Time # created_at
  field :data, :type => Hash # entities (hashtags and user_mentions)
  field :assets, :type => Hash # urls from original entities
  field :service, :type => String, …
Run Code Online (Sandbox Code Playgroud)

ruby mongoid ruby-on-rails-3

9
推荐指数
1
解决办法
1349
查看次数

JVM基准测试应用程序

我们希望比较不同环境(Windows,Solaris,...)中相同Java版本(1.5)的不同JVM的一般性能(CPU,I/O,网络......).

您知道任何可用于比较不同JVM结果的JVM基准测试应用程序吗?

非常感谢你.

java benchmarking jvm

8
推荐指数
1
解决办法
3136
查看次数

WS在TIBCO BW或Java中

我发现与使用Java编码相比,在TIBCO中开发WS要快得多.

使用TIBCO作为您的WS服务提供商和服务请求者是明智的投资吗?

同时也是开发JMS消费者和发布者的先前问题.

我的服务器端Java代码如何使用/监听BW流程?到目前为止,我读到了有关TIBCO Adapters的功能,它具有许多功能,如监控,但这只是一个开销吗?在Java应用程序中编写WS&JMS代码是否更好?

您如何决定是否在Java或TIBCO中实现功能(例如发送邮件,记录等)?

非常感谢!Thirdy

java tibco jms eai businessworks

8
推荐指数
1
解决办法
2266
查看次数

CommonJ TimerManager与EJB3 TimerService

我必须为WebLogic实现一个简单的(非集群)计时器,似乎有两种不同的"标准"选项

  • 计时器和工作管理器API(CommonJ)
  • EJB3.0 TimerService

有没有人对使用CommonJ TimerManager而不是在WebLogic 10.0中使用EJB3 TimerService有任何建议?

谢谢.

weblogic timer commonj java-ee ejb-3.0

8
推荐指数
2
解决办法
4643
查看次数