首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Tomcat7中更快的随机生成器

Tomcat7中更快的随机生成器
EN

Stack Overflow用户
提问于 2011-09-26 20:09:04
回答 4查看 14.2K关注 0票数 18

我有一个问题,Tomcat 7在启动时非常慢。我在日志文件中找到了这个:

INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [12,367] milliseconds.

当然,安全性很重要,但在我的开发机器上不是。我完全可以接受一个标准的快速随机数生成器。所以我不需要这种慢得离谱的SecureRandom实现。

问题是:我如何禁用它?搜索解决方案,但只找到一些有关可以设置为java.util.RandomrandomClass属性的过时信息。我还发现这个属性现在在Tomcat7中似乎被命名为secureRandomClass。我试图将其设置为java.util.Random,但失败了,因为Tomcat7将该对象强制转换为java.util.SecureRandom (而且文档中还规定指定的类必须扩展java.util.SecureRandom,因此不能再使用java.util.Random )。

那么,我如何摆脱这种极其缓慢的随机数生成器启动,以便我的开发tomcat尽可能快地启动/重新启动?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-26 20:30:34

您可能需要为Tomcat打补丁。

不过作为一种技巧,你可以尝试用一些包装标准java.util.Random实例的东西来扩展java.util.SecureRandom ......这至少可以解决强制转换问题。

另一个想法..。速度减慢会不会是由于熵池耗尽?您可能想要尝试将更多的熵放入池中,这可能会使它运行得非常快。

票数 2
EN

Stack Overflow用户

发布于 2014-09-09 17:10:49

根据TomCat Wiki的说法,你可以使用非阻塞熵源:

“有一种方法可以通过设置以下系统属性将JRE配置为使用非阻塞熵源:-Djava.security.egd=file:/dev/./urandom

票数 13
EN

Stack Overflow用户

发布于 2014-10-18 05:39:50

只需从$JAVA_PATH/jre/lib/security/java.security文件中找到securerandom.source=...并将其更改为securerandom.source=file:/dev/./urandom

https://stackoverflow.com/a/26432537/450586

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7554831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档