#!/bin/bash
#
# chkconfig: - 20 80
# description: Starts and stops the App.
# author:vakinge
ENV=dev
RUNNING_USER=vakinge
ADATE=`date +%Y%m%d%H%M%S`
APP_NAME=passport-server
APP_HOME=`pwd`
dirname $0|grep "^/" >/dev/null
if [ $? -eq 0 ];then
APP_HOME=`dirname $0`
else
dirname $0|grep "^\." >/dev/null
retval=$?
if [ $retval -eq 0 ];then
APP_HOME=`dirname $0|sed "s#^.#$APP_HOME#"`
else
APP_HOME=`dirname $0|sed "s#^#$APP_HOME/#"`
fi
fi
if [ ! -d "$APP_HOME/logs" ];then
mkdir $APP_HOME/logs
fi
LOG_PATH=$APP_HOME/logs/$APP_NAME.out
GC_LOG_PATH=$APP_HOME/logs/gc-$APP_NAME-$ADATE.log
#JMX监控需用到
JMX="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1091 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
#JVM参数
JVM_OPTS="-Dname=$APP_NAME -Djeesuite.configcenter.profile=$ENV -Duser.timezone=Asia/Shanghai -Xms512M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=512M -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -Xloggc:$GC_LOG_PATH -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC"
JAR_FILE=$APP_NAME.jar
pid=0
start(){
checkpid
if [ ! -n "$pid" ]; then
JAVA_CMD="nohup java -jar $JVM_OPTS $JAR_FILE > $LOG_PATH 2>&1 &"
su - $RUNNING_USER -c "$JAVA_CMD"
echo "---------------------------------"
echo "启动完成,按CTRL+C退出日志界面即可>>>>>"
echo "---------------------------------"
sleep 2s
tail -f $LOG_PATH
else
echo "$APP_NAME is runing PID: $pid"
fi
}
status(){
checkpid
if [ ! -n "$pid" ]; then
echo "$APP_NAME not runing"
else
echo "$APP_NAME runing PID: $pid"
fi
}
checkpid(){
pid=`ps -ef |grep $JAR_FILE |grep -v grep |awk '{print $2}'`
}
stop(){
checkpid
if [ ! -n "$pid" ]; then
echo "$APP_NAME not runing"
else
echo "$APP_NAME stop..."
kill -9 $pid
fi
}
restart(){
stop
sleep 1s
start
}
case $1 in
start) start;;
stop) stop;;
restart) restart;;
status) status;;
*) echo "require start|stop|restart|status" ;;
esac
---------------------
作者:vakinge
来源:CSDN
原文:https://blog.csdn.net/vakinge/article/details/78706679
版权声明:本文为博主原创文章,转载请附上博文链接!
分享到:
相关推荐
"spring微服务fat jar部署为windows service工具包"是一个专门为在Windows环境下运行Spring Boot微服务设计的解决方案。这个工具包包含两个关键文件:prunsrv.exe和proc_install_service.bat。 1. **prunsrv.exe**:...
Spring Boot作为一个微服务框架,使得整个项目的微服务化成为可能,而gmall-parent则是一个项目名称,表明这是个电商领域的解决方案。至于项目设计,则体现了该项目不仅仅关注实现功能,更关注如何架构设计以保证...
在系统设计上,本项目采用了微服务的架构理念,通过Spring Boot的模块化特性,将不同的业务功能划分为独立的服务。这种设计不仅提高了系统的可扩展性和可维护性,也便于实现服务的热部署和故障隔离,确保了系统的高...
Spring Boot作为当下流行的Java开发框架,以其轻量级、易于配置的特点被广泛应用于微服务架构和快速开发领域。Shiro作为一个功能强大的安全框架,提供了认证、授权、加密、会话管理等多种安全功能,保证应用的安全...
在实际的项目开发中,Spring Boot能够提供快速启动、自动配置和内置服务器等便利,使得开发者可以更专注于业务逻辑的实现,而不是底层基础设施的配置。 【标签】"spring boot"和"spring boot"表明项目的核心技术栈...
为了提高疗养院的管理效率和服务质量,基于Spring Boot的疗养院管理系统应运而生,它利用了Spring Boot框架的优势,简化了项目的配置与部署流程,是当前较为流行的一种微服务架构实践。 该系统的开发采用了现代化的...
源码中可以看到Spring Boot的启动配置、自动配置、健康检查等相关组件的使用。 二、MyBatis Plus MyBatis Plus是一个MyBatis的增强工具,它在MyBatis的基础上做了很多简化,如:提供 CRUD 操作、支持自定义全局通用...
Spring Boot是一个成熟的开源框架,它简化了基于Spring的应用开发过程,可以快速启动和运行Spring应用程序。Spring Boot 3作为该框架的最新版本,引入了许多新特性和改进,例如对响应式编程的更好支持,这有助于提高...
2. 采用了Spring-Boot框架进行开发,这是现代Java应用开发中常用的微服务框架,它能够简化配置和部署流程,提高开发效率。 3. 项目包含大量的Java源文件和其他配置文件,这表明项目是一个全栈式开发,涵盖了后端服务...
Spring Cloud是Java生态中最受欢迎的微服务框架之一,它为开发者提供了快速构建分布式系统所需的各种通用功能,如服务发现、配置管理、断路器、智能路由等。 首先,我们需要了解Spring Cloud的核心组件和服务: 1....
这是一个完整的项目结构,涉及的子项目模块包括核心模块 jjche-boot-modules,服务端jjche-boot-server,微服务相关jjche-cloud-server,框架核心jjche-boot-framework,用户界面jjche-boot-ui以及部署相关deploy。...
Spring Boot的核心特性包括自动配置、内嵌Web服务器(如Tomcat)以及启动脚本的支持,使得开发者可以快速创建独立运行的Spring应用程序。 接下来是Dubbo,它是阿里巴巴开源的一个高性能、轻量级的Java RPC框架。...
《RuoYi-Vue2021:基于Spring Boot的多模块前后端分离系统实践》 RuoYi-Vue2021是一个高度可定制化的前后端分离项目,它利用了最新的技术栈,包括Spring Boot 2.2和Vue.js,为开发者提供了便捷的代码生成工具,极大...
这里可能涉及到Spring Boot的起步依赖、Spring Cloud的版本管理,以及其他通用的库和插件,这些都为子项目提供了基础框架。 总的来说,这个压缩包提供了一整套Eureka实战的源码示例,涵盖了服务提供者、消费者和...
Spring Cloud作为构建分布式系统的工具集,包含了微服务架构所需的各种功能组件,方便开发者快速构建和部署基于微服务的应用程序。 文件列表中包括了一些常见的项目文件和脚本,例如gradlew.bat和gradlew,它们是...
由于脚本同时适用于boot和cloud版本,这意味着无论开发人员是使用传统的SpringBoot单体应用模式,还是采用微服务架构的Spring Cloud模式,都能够轻松地安装和配置bpm模块。这种通用性大大提高了开发效率和部署灵活性...
它可能利用了如Spring Boot Actuator这样的监控工具,提供了健康检查、指标暴露、审计日志等功能。 `docker`目录可能包含与Docker相关的配置和脚本,表明该平台支持通过Docker容器化部署,这可以提高部署的便捷性和...
- **启动服务发现**:通过注解@EnableDiscoveryClient,使Spring Boot应用成为Nacos的服务提供者或消费者。 - **动态配置**:使用@RefreshScope注解的Bean可以实现配置热更新,当Nacos中的配置发生变化时,应用会...
Spring Boot通过提供默认配置,自动配置以及微服务架构支持等方式,极大地提高了开发效率和生产力。在本电子招投标系统项目中,Spring Boot负责了后端服务的搭建、RESTful API的创建以及业务逻辑的处理。它允许...
Spring+SpringMVC+Mybatis框架集成公共模块,包括公共配置、MybatisGenerator扩展插件、通用BaseService、工具类等。 > zheng-admin 基于bootstrap实现的响应式Material Design风格的通用后台管理系统,`zheng`...