ubuntu16.04下部署tomcat9和java8启动一次需要七八分钟
一、环境如下
Ubuntu16.04 +tomcat9+openjdk1.8
二、问题
在tomcat的bin下执行./startup.sh 如下图没有问题
root@bogon:/usr/apache-tomcat-9.0.8/bin# ./startup.sh
./catalina.sh: 110: ./catalina.sh: -Djava.security.egd=file:/dev/./urandom: not found
Using CATALINA_BASE: /usr/apache-tomcat-9.0.8
Using CATALINA_HOME: /usr/apache-tomcat-9.0.8
Using CATALINA_TMPDIR: /usr/apache-tomcat-9.0.8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/apache-tomcat-9.0.8/bin/bootstrap.jar:/usr/apache-tomcat-9.0.8/bin/tomcat-juli.jar
Tomcat started.
但是在浏览器访问http://ip:8080却是一直是等待状态,此时tomcat下面是默认的只有一个tomcat默认的ROOT项目,此时以为是端口被占用,会有很多假象
比如:你的tomcat还没启动,这个时候你执行./shutdown.sh就说连接被拒绝,还有端口什么的问题,这是因为你的服务还没完全启动,执行关闭的操作肯定是监测到你的服务还没有运行,不需要关闭的错误提示了
三、解决办法
这个还是要感谢广大技术人员,这个问题不出意外的已经很多人遭遇了,下面给出解决问题的思路
1:查看tomcat的启动日志 catalina.2018-05-08.log,如下图所示

启动端口初始化都OK,问题就在下面的一段日志中,发现SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance这个创建随机安全实例花费了很长的时间
08-May-2018 19:16:37.013 WARNING [main] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [431,234] milliseconds.
08-May-2018 19:16:37.098 INFO [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/usr/apache-tomcat-9.0.8/webapps/manager] has finished in [431,592] ms
2:解决方法,去到openjdk的安装目录下面如下所示
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/security/java.security
修改文件中的相关内容,如下图

即把securerandom.source=file:/dev/random改为securerandom.source=file:/dev/./urandom保存重启tomcat服务,问题得到解决
ubuntu16.04下部署tomcat9和java8启动一次需要七八分钟的更多相关文章
- Ubuntu16.04下部署 nginx+uwsgi+django1.9.7(虚拟环境pyenv+virtualenv)
由于用的新版本系统,和旧的稍有差别,在网上搜了很多相关资料,搞了三天终于搞好在Ubuntu16.04下的部署,接下来就详细写写步骤以及其中遇到的问题.前提是安装有虚拟环境pyenv+virtualen ...
- Ubuntu16.04下部署golang开发环境
一.需要文件 golang http://www.golangtc.com/download liteide http://www.golangtc.com/download/liteide 二.安装 ...
- Ubuntu16.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 说在前面的话 首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...
- Ubuntu16.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 说在前面的话 首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...
- Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 在这篇博客里,我采用了非官网的安装步骤,来进行安装.走了弯路,同时,也是不建议.因为在大数据领域和实际生产里,还是要走正规的为好. Ubuntu16.04下Mongodb(离线安 ...
- ubuntu16.04下Hyperledger之搭建Fabric环境简单操作(五步启动e2e_cli)
如果你已经安装好go等工具.git及checkout相关代及下载相关镜像,您只需下面5步就能up e2e_cli~/go/src/github.com/hyperledger/fabric$ sudo ...
- Ubuntu16.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 前期博客 Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...
- primecoin在ubuntu16.04上部署服务:
primecoin在ubuntu16.04上部署服务: 一.下载Tomcat,Jdk,primecoin(公司内部文件) 注意Tomcat版本需要高于Jdk的,不然会报错. 二.把它们都解压到你要的安 ...
- Ubuntu16.04下沙盒数据导入到 Neo4j 数据库(图文详解)
不多说,直接上干货! 参考博客 http://blog.csdn.net/u012318074/article/details/72793914 (表示感谢) 前期博客 Neo4j沙盒实验申请过 ...
随机推荐
- HDU 4772 Zhuge Liang's Password (2013杭州1003题,水题)
Zhuge Liang's Password Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...
- 内核调试神器SystemTap 转摘
http://blog.csdn.net/zhangskd/article/details/25708441 https://sourceware.org/systemtap/wiki/WarStor ...
- CRC校验的实现
本例提供的是通过查表发来实现CRC校验. CRC余式表如下: unsigned int crctab[256] ={/*CRC余式表 */ 0x0000, 0x1021, 0x2042, 0x3063 ...
- delphi 隐藏标题栏
1.隐藏窗体的标题栏在Delphi中隐藏窗体的标题栏,相信大家都会说是一个件十分容易的事情,只需要设置BorderStyle的属性为bsNone就可以了,不过这种设置方法不但去掉了窗体的标题栏,而 ...
- git 自动转换行符的坑爹案例
本人写的脚本都是在unix上运行的,但是编写有时候喜欢使用Git拉去到windows的ide进行编写,毕竟我的unix只有命令行的没有ide, 殊不知有一天我的sh执行时出现错误 -bash: ./d ...
- Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏.
Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏. Delphi中,除了应用程序主窗口会显示在任务栏上,其它窗口默认都不会显示在任务栏.没有MS开发环境中的ShowI ...
- ios测试宏指令出错:“Expected identefier”
写了一个简单的测试宏指令,然后在下面代码中报错,不知道怎么修复?谢谢 #define test(condition) do{\ if (condition) {\ //// <-----Expe ...
- C#编程(十五)----------只读字段
只读字段 当字段声明中含有 readonly 修饰符时,该声明所引入的字段为只读字段.给只读字段的直接赋值只能作为声明的组成部分出现,或在同一类中的实例构造函数或静态构造函数中出现.(在这些上下文中, ...
- excel 单元格内容太多,替换有问题
excel 单元格内容太多,替换有问题
- 霍夫曼编码(Huffman Coding)
霍夫曼编码(Huffman Coding)是一种编码方法,霍夫曼编码是可变字长编码(VLC)的一种. 霍夫曼编码使用变长编码表对源符号(如文件中的一个字母)进行编码,其中变长编码表是通过一种评估来源符 ...