昨天在前领导技术大牛吕哥的帮忙下,python服务管理从nginx+supervisor+uwsgi+python3改为了轻便结构nginx + unit + python3,部署和配置起来顿时轻松起来。服务器配置好以后赶紧上官网http://unit.nginx.org将英文文档全部啃完,全面理解了它的运行原理。

  由于nginx unit它的服务重启方式,是自动检测配置文件是否有更改,然后才会自动重载,而python代码发布以后,并没有对配置进行更改,所以昨晚在进行代码更新以后,发现运行的还是旧的程序,和吕哥沟通后他说等他想想解决办法。早上一早就发信息过来并将执行代码发了过来。一看原来是直接kill掉进程的方式,再通过运行服务启动程序来进行重载。

  然后我就拿测试服务器实验了起来,在服务器上输入下面命令,将unit进程kill掉

kill -9 `ps -ef |grep unit|awk '{print $2}'`

  跟着执行启动服务命令(这个命令的路径,大家安装的位置不同路径是不一样的,替换成自己的就可以执行了)

/usr/local/src/unit/build/unitd

  命令执行以后发现先是报下面错误,但服务正常启动了

2018/12/20 11:53:25 [alert] 1299#1299 Unable to create certificates storage directory: mkdir(state/certs/) failed (2: No such file or directory)
2018/12/20 11:53:25 [info] 1299#1299 bind(7, unix:control.unit.sock) failed (98: Address already in use)

  进入buile目录下面发现state与certs目录都存在,没有发现有什么问题

  输入命令查看服务启动状态:ps -ef | grep unit

  检查服务没有启动,解决不了只能输入reboot重启一下服务器,重启后运行服务启动命令还是报同样的错误

2018/12/20 11:54:17 [alert] 1299#1299 bind(6, unix:control.unit.sock) failed (98: Address already in use)

  服务直接挂了启动不了......

  赶紧上goole和百度查询解决方案,发现没有一篇文章,难道只有我是这么干才会出来这种个问题吗?人品简直是爆炸了

  没有办法的情况下,只能自己研究检查了,看看日志有没有什么记录,查看build目录下面的unit.log并没有什么异常记录。在检查的过程中发现build目录下面有个0字节的文件名很可疑,名字跟错误提示中的信息一样:control.unit.sock

  

  感觉应该有可能是这个文件造成的,所以尝试使用删除命令将它删掉,然后再次运行服务启动命令,发现一切恢复正常状态,再次刷新这个文件夹,发现删除掉的这个文件又出来了

  通过这样操作的结果,可以判断unit在启动后,它会在build目录创建一个名为control.unit.sock的文件,做为服务锁以防止服务同时启动多个,而当服务被非正常状态关闭时,可能就会引发这个文件没有被同步清除,而导致服务无法正常启动。

  除了使用kill方法删除unit进程以外,我还尝试使用reboot直接启动服务器,也试过出现同样的问题,服务启动不了。还好发现这个问题以后积极研究解决了,不然万一线上系统哪一天要重启,导致同样的情况发生而一直无法访问,那就影响大了去了。

版权声明:本文原创发表于 博客园,作者为 AllEmpty 本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

python开发QQ群:669058475(本群已满)、733466321(可以加2群)    作者博客:http://www.cnblogs.com/EmptyFS/

关于nginx unit服务非正常关闭后,无法重新启动问题的处理的更多相关文章

  1. MongoDB非正常关闭后修复记录

    启动mongodb时出现如下错误: 根据提示可以知道错误原因是mongodb非正常关闭,此时需要对数据库进行修复.修复命令:mongod --repair 或 ./mongod --repair , ...

  2. myeclipse非正常关闭处理办法

    myeclipse正常或非正常关闭后,再次运行,不显示启动时的logo和读条,进入主页面后程序基本就卡死,无法正常运行,解决办法. 方法一:修改工作空间在刚启动Myeclipse的时候会有一个选择工作 ...

  3. svn + nginx unit + python3自动化发布web服务方法

    本周将python web服务管理更换成nginx unit以后发现接口性能有了明显的提升,访问速度快了不少.不过有个很大的问题就是使用svn自动化发布以后,服务并没有刷新使用新的代码运行,而又不懂得 ...

  4. windows tomcat nginx session(当一台tomcat关闭后)

    在windows下作nginx负载均衡测试. nginx的配置文件如下: worker_processes  1; events { worker_connections  1024; } http ...

  5. 非正常关闭myeclicps后,出现错误Errors occurred during the build.的解决方法

    我的myeclicps是10.7版本由于非正常关闭,在启动tomcat时候出现了问题. 解决法案: 1.关闭myeclicps. 2.打开你的myeclicps的工作空间(workspace自己设置的 ...

  6. 【转】Android Service被关闭后自动重启,解决被异常kill 服务

    http://www.kaifajie.cn/android/10182-2.html 每次调用startService(Intent)的时候,都会调用该Service对象的onStartComman ...

  7. VMware服务关闭后一定要重启

    重要的事情说三遍:服务暂时关闭记得重启,服务暂时关闭记得重启,服务暂时关闭记得重启!!! VMware服务由于安装补丁的需要我暂时把服务关闭了,于是我遇到了尴尬的一幕,于是乎发现上不了网了,于是各种操 ...

  8. nginx Windows服务形式运行

    背景 现在使用ngnix的人越来越多,nginx的优势劣势网上也很多说明.这里就不探讨nginx优势与劣势,每个工具都有自己优势劣势,没有最好的工具,只有最合适的工具.   如何选择适当的工具,根据项 ...

  9. 八.nginx网站服务实践应用

    期中集群架构-第八章-期中架构nginx章节====================================================================== 01. web ...

随机推荐

  1. Intellij idea 离线安装activiti工作流插件

    想在Intellij idea上安装一个activiti插件玩玩,由于网络环境原因,不能使用网上已有的在线搜索acti bpm并安装的方式.也在网上找了好久没找到离线安装的方式.自己摸索了一下装好了, ...

  2. gitbook 入门教程之 gitbook 简介

    gitBook 是一个基于node.js的命令行工具,使用 github/git 和 markdown/asciiDoc 构建精美的电子书. gitbook 支持输出静态网页和电子书等多种格式,其中默 ...

  3. Exp5 Msf基础应用 20164312 马孝涛

    1.本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要完成: 1.1一个主动攻击实践,如ms08_067; (1分) 1.2 一个针对浏览器的攻击,如ms11_ ...

  4. XMPP协议之消息回执解决方案

    苦恼中寻找方法 在开始做即时通信时就知道了消息回执这个概念,目的是解决通讯消息因为各种原因未送达对方而提供的一种保障机制.产生这个问题的原因主要是网络不稳定.服务器或者客户端一些异常导致没有接收到消息 ...

  5. JQuery 常用的那些东西

    CDN Google CDN Microsoft CDN CDNJS CDN jsDelivr CDN 选择器 jQuery 元素选择器和属性选择器允许您通过标签名.属性名或内容对 HTML 元素进行 ...

  6. 微信小程序 写一个获取验证码 及setInterval 使用基本方法

    <!--index.wxml--> <view class="container"> <view class="container_cont ...

  7. Dubbo 支持哪些序列化协议?

    面试题 dubbo 支持哪些通信协议?支持哪些序列化协议?说一下 Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的? 面试官心理分析 上一个问题,说说 dubbo 的基本工作原理 ...

  8. PHP全栈学习笔记7

    图形图像处理技术,gd库的强大支持,PHP的图像可以是PHP的强项,PHP图形化类库,jpgraph是一款非常好用的强大的图形处理工具. 在PHP中加载GD库 gd官方网址下载: http://www ...

  9. 服务端渲染和nuxt简单介绍

    概述 最近研究了一下服务端渲染,有一些心得,记录下来供以后开发时参考,相信对其他人也有用. 参考资料: Vue SSR指南 nuxt.js官网 服务端渲染介绍 服务端渲染简单来说,就是分别对项目用we ...

  10. Nosql与关系型数据库不同的使用场景

    Nosql 1.适合存储非结构化数据存储,数据量且不可预期.如:评论,文章 2.排行榜数据获取,实时更新的数据.如:游戏榜排名,用户投票 3.限时抢购活动.如:淘宝抢购活动 4.反垃圾系统.如:敏感词 ...