工作环境后端构建部署优化

后端项目模块越来越多,构建部署速度越来越慢,想办法进行构建部署速度上的优化。

1、使用Maven的并发构建功能来加快构建速度。

在执行mvn clean install命令时,可以使用-T参数指定并发线程数。

mvn clean install -T 10 -Dmaven.test.skip=true

lscpu查看linux服务器cpu核数。
修改后项目构建时可能会报错too many open files(打开的文件过多)。
原因就是进程在某个时刻打开了超过系统限制的文件数量以及通讯链接数,通过命令ulimit -a可以查看当前系统设置的最大句柄数:
在这里插入图片描述
增大允许打开的文件数——修改系统配置文件

vim /etc/security/limits.conf

在文件结尾初增加配置:

* soft nofile 65536
* hard nofile 65536
* soft nproc  65536
* hard nproc  65536

2、优化启动脚本

并发启动微服务模块
原脚本(片段):

		## 启动MY_GATEWAY
        echo "****开始启动MY网关****"
        nohup java -jar -Dloader.path=$2/libs/MY-gateway $JAVA_OPTS $MY_GATEWAY > $MY_GATEWAY_LOG 2>&1 &
        MY_GATEWAY_PID=`lsof -i:$MY_GATEWAY_PORT|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$MY_GATEWAY_PID" ]
            do
              MY_GATEWAY_PID=`lsof -i:$MY_GATEWAY_PORT|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "MY_GATEWAY PID is $MY_GATEWAY_PID"
        ## sleep 1
        echo "****MY网关服务启动成功!****"
        echo "            *           "

        ## 启动MY_SYSTEM
        echo "****开始启动MY系统管理****"
        nohup java -jar -Dloader.path=$2/libs/MY-modules-system $JAVA_OPTS $MY_SYSTEM > $MY_SYSTEM_LOG 2>&1 &
        MY_SYSTEM_PID=`lsof -i:$MY_SYSTEM_PORT|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$MY_SYSTEM_PID" ]
            do
              MY_SYSTEM_PID=`lsof -i:$MY_SYSTEM_PORT|grep "LISTEN"|awk '{print $2}'`
            done
        echo "MY_SYSTEM PID is $MY_SYSTEM_PID"
        ##sleep 1
        echo "****MY系统管理服务启动成功!****"
        echo "            *           "

        ## 启动MY_BASE
        echo "****开始启动MY基础数据****"
        nohup java -jar -Dloader.path=$2/libs/MY-modules-base $JAVA_OPTS  $MY_BASE > $MY_BASE_LOG 2>&1 &
        MY_BASE_PID=`lsof -i:$MY_BASE_PORT|grep "LISTEN"|awk '{print $2}'`
        until [ -n "$MY_BASE_PID" ]
            do
              MY_BASE_PID=`lsof -i:$MY_BASE_PORT|grep "LISTEN"|awk '{print $2}'`
            done
        echo "MY_BASE PID is $MY_BASE_PID"
        ##sleep 1
        echo "****MY基础数据服务启动成功!****"
        echo "            *           "

新脚本(片段):

		## 启动MY_GATEWAY
        echo "****开始启动MY网关****"
        nohup java -jar -Dloader.path=$2/libs/MY-gateway $JAVA_OPTS $MY_GATEWAY > $MY_GATEWAY_LOG 2>&1 &
        MY_GATEWAY_PID=`lsof -i:$MY_GATEWAY_PORT|grep "LISTEN"|awk '{print $2}'`

        nohup java -jar -Dloader.path=$2/libs/MY-modules-system $JAVA_OPTS $MY_SYSTEM > $MY_SYSTEM_LOG 2>&1 &
        MY_SYSTEM_PID=`lsof -i:$MY_SYSTEM_PORT|grep "LISTEN"|awk '{print $2}'`

        nohup java -jar -Dloader.path=$2/libs/MY-modules-base $JAVA_OPTS  $MY_BASE > $MY_BASE_LOG 2>&1 &
        MY_BASE_PID=`lsof -i:$MY_BASE_PORT|grep "LISTEN"|awk '{print $2}'`

        until [ -n "$MY_GATEWAY_PID" ]
            do
              MY_GATEWAY_PID=`lsof -i:$MY_GATEWAY_PORT|grep "LISTEN"|awk '{print $2}'`  
            done
        echo "MY_GATEWAY PID is $MY_GATEWAY_PID"
        ## sleep 1
        echo "****MY网关服务启动成功!****"
        echo "            *           "

        ## 启动MY_SYSTEM
        echo "****开始启动MY系统管理****"
        until [ -n "$MY_SYSTEM_PID" ]
            do
              MY_SYSTEM_PID=`lsof -i:$MY_SYSTEM_PORT|grep "LISTEN"|awk '{print $2}'`
            done
        echo "MY_SYSTEM PID is $MY_SYSTEM_PID"
        ##sleep 1
        echo "****MY系统管理服务启动成功!****"
        echo "            *           "

        ## 启动MY_BASE
        echo "****开始启动MY基础数据****"
        until [ -n "$MY_BASE_PID" ]
            do
              MY_BASE_PID=`lsof -i:$MY_BASE_PORT|grep "LISTEN"|awk '{print $2}'`
            done
        echo "MY_BASE PID is $MY_BASE_PID"
        ##sleep 1
        echo "****MY基础数据服务启动成功!****"
        echo "            *           "

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值