相关疑难解决方法(0)

如何解决慢Java`SecureRandom`?

如果你想在Java中使用加密强大的随机数,你可以使用SecureRandom.不幸的是,SecureRandom可能会很慢.如果它/dev/random在Linux上使用,它可以阻止等待足够的熵建立.你如何避免性能损失?

有没有人使用Uncommon Maths作为解决这个问题的方法?

任何人都可以确认JDK 6中已经解决了这个性能问题吗?

java security random performance entropy

157
推荐指数
11
解决办法
14万
查看次数

Jvm需要很长时间来解析localhost的ip-address

升级到macOS Sierra后,我似乎遇到了"sbt test"性能问题.在以前版本的OS X上花了大约40-50秒才完成.macOS Sierra时代要高得多.我上次跑的时间大约是15分钟.编译时间与'El Capitan'大致相同.

我是团队中唯一一个尝试这个新macOS的人,所以我不知道它是否只发生在我的Mac上,还是一个普遍的问题.

我的同事在Ubuntu上有类似的问题,它与随机数生成有关,减慢了测试速度 - 服务响应速度慢时间:Java SecureRandom&/ dev/random

不幸的是,这对我不起作用.最初我在JDK 8u54上试过,然后尝试更新到JDK 8u102,这也没有帮助.

PS我正在运行Macbook Pro Mid-2015 2.8GHz i7,16GB RAM,1TB SSD.

java scala sbt scalatest macos-sierra

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

BCrypt性能恶化

我们在Jboss服务器6.1中运行了三个Web应用程序(标准的Spring MVC-Hibernate).所有这三个应用程序共享一个通用的身份验证方法,该方法被编译为JAR并包含在每个WAR文件中.我们的身份验证方法使用org.springframework.security.crypto.bcrypt.BCrypt来哈希用户密码,请参阅以下内容:

hashedPassword.equals(BCrypt.hashpw(plainTextPassword, salt));
Run Code Online (Sandbox Code Playgroud)

JBOSS启动选项

set "JAVA_OPTS=-Xms2048m -Xmx4096m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -verbosegc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:gc.txt -XX:+UseParallelOldGC

问题: 当服务器重新启动时,Bcrypt.hashpw需要100ms来解密密码.然而,经过一段时间(没有模式),Bcrypt.hashpw性能突然从100毫秒上升到10秒.这没有明显的原因.

更多信息:

  • Hibernate版本:4.2.4.Final
  • Spring Version:4.0.5.RELEASE Spring
  • 安全版本:3.2.4.RELEASE

有没有其他人见过这个问题?

java performance spring-mvc spring-security bcrypt

19
推荐指数
1
解决办法
3472
查看次数