美文网首页技术干粮
如何实现Spring Cloud微服务挂掉之后自动重启?

如何实现Spring Cloud微服务挂掉之后自动重启?

作者: 壳叔 | 来源:发表于2019-05-07 13:54 被阅读0次
    image

    本文由黑壳博客编写

    本文来源如何实现Spring Cloud微服务挂掉之后自动重启?

    每篇一笑

    白雪公主结婚以后,身体一直不太好。王子请来医生诊断,发现她居然只剩下一个肾。王子悲伤地捧起她的脸:“亲爱的,你到底遭遇了什么?”白雪公主勉强露出一个微笑:“我在森林隐居时,有一天,一个巫婆敲开门对我说:“孩子,来个苹果吧

    正文

    微服务迟早是要部署在Linux系统上的,当网络不稳定就会挂掉,但是挂掉后手动去重启是十分麻烦的,我们的SC微服务虽然强大,应该还没有自行起死回生的本事,需要借助于外部命令来实现自动重启。下面就以Eureka为例配合shell脚本来实现自动重启。

    1、启动一台Eureka:
    java -jar clouddo-eureka-0.0.1-SNAPSHOT.jar

    2、启动脚本:sh ./eureka.sh ,脚本文件和jar包放在同一个目录下。脚本内容:

    #!/bin/sh
    while :
    do
    run=$(ps -ef |grep "clouddo-eureka-0.0.1-SNAPSHOT" |grep -v "grep")
    if [ "$run" ] ; then
    echo "The service is alive!"
    else
    echo "The service was shutdown!"
    echo "Starting service ..."
    nohup java -jar $PWD/clouddo-eureka-0.0.1-SNAPSHOT.jar&
    echo "The service was started!"
    fi
    sleep 10
    done
    

    注意:这里是在while死循环下,每隔10秒检测一次我们的eureka进程,如果进程存在则打印The service is alive!,如果进程失败就执行重启命令。当然,我们也可以指定这段shell开机运行,这样就可以省去很多事情。
    3、杀掉服务:
    将服务kill 掉 kill -9 xxx
    4、服务自动重启
    xxx 3829 9.4 14.3 2635272 294356 ? Sl 11:04 0:45 java -jar clouddo-blackdir-0.0.1-SNAPSHOT.jar

    About

    欢迎在评论写下你的程序员趣事~~

    欢迎加入我们的小组织 ,大家都叫壳叔,期待你的到来。

    欢迎关注公众号

    微信公众号

    这是我们的Group

    黑壳家根据地 Q群:200408242

    相关文章

      网友评论

        本文标题:如何实现Spring Cloud微服务挂掉之后自动重启?

        本文链接:https://www.haomeiwen.com/subject/ntueoqtx.html