Spring boot 项目打包成可执行jar,在本地机运行正常,复制到非开发环境单机上运行也正常如下:
C:\Users\Administrator\Desktop>java -jar ./sm-backend-1.0.0-exec.jar
但发布到服务器上运行就报错(服务器上的java Mysql redis 版本一致),如下:
不知道是什么原因,请朋友们帮助分析一下,谢谢!
Spring boot 项目打包成可执行jar,在本地机运行正常,复制到非开发环境单机上运行也正常如下:
C:\Users\Administrator\Desktop>java -jar ./sm-backend-1.0.0-exec.jar
但发布到服务器上运行就报错(服务器上的java Mysql redis 版本一致),如下:
不知道是什么原因,请朋友们帮助分析一下,谢谢!
原因找到了,是创建数据库连接池时,核心线程数大于了最大线程数(程序本来运行在8核服务器上正常,核心线程数是5,最大线程数是cpu数的2倍,即16),当程序在一个2核服务器上运行时核心线程数仍然是5,最大线程数却变成了4,小于核心线程数,所以出现不能创建连接池的情况。