住院半个月,导致博客断更了,重新开始一个新系列。
BT服务器的管理相关梳理:
当服务器项目很多,特别是几十个服务器需要进入管理的时候,会比较麻烦,一般是需要一个专门的项目管理面板里面,点击每个不同的项目名字,然后分别进入到对应项目里面,也可以使用一个记事本的模式,找到对应的项目,赋值链接到浏览器,然后登录后台进行访问。前者需要开发一个相关的管理体系,用来梳理各个项目。经过自己的一些经验,发现火狐浏览器的收藏夹比较好用。
首先可以将不同的项目按照分类建立收藏夹(以前对浏览器的收藏夹基本就是保存网址的作用,现在来看,当需要切换不同项目的时候,需要梳理每个项目的大类,然后针对大类进行适当管理,非常有必要)
然后登录的时候,需要让服务器记住BT服务器的相关密码,直接暴露密码有风险,但是为了提高开发和登录的效率,必须使用密码记录功能。这样每次登录不同的服务器,都会自动填充对应密码。
偶尔到时候,账户和密码会因为某种原因被更改掉,需要进入到浏览器里面 来修改密码。 设置------隐私安全------保存的密码------输入对应网址。如果账号密码更改了,但是没有及时更新,登录的时候,会不断提示错误,所以账号密码异常需要进行更新,提高管理项目的效率。
PS: 收藏夹的位置很关键,如果是隐藏的,每次查看网址,需要点击右上角拓展,然后再点击,会非常费劲。最好直接可以看到各个大类,然后点击即可。ctrl+shift+B (谷歌浏览器 Edge 浏览器 唤出收藏夹的方法)。
路径的收藏:
服务器的目录------git对应的网址路径------收藏------点击打开(这样下次直接就进入了该目录里面)可以直接进入项目的相关目录,这样就能快速操作服务器代码部分,例如更新。考虑到服务器除了基础的运维,其实主要是同步更新本地代码。
代码的开发管理维护:
1.传统简单的FTP同步管理方法(流程逻辑简单,适合单文件的修改)暴露出的问题:面对生成类型的代码无能为力,要一个一个的将生成的代码上传上去,非常麻烦,还不如整站打包直接覆盖。面对代码回滚操作,也无能为力,版本太多,都不知道到哪个版本,除了自己认为的加入版本号,没有其他方法,于是出现了很多搞笑的index1.php index2.php 诸如此类可能有用,但是实际上只有参考价值的文件,代码丢失问题比较严重,一旦代码没同步,代码直接丢失。另外,在多台服务器上同步代码也是一个巨大的问题,特别是均衡负载情况下,不用git,一台一台服务器区更改是噩梦。
2.git 代码管理 简单版 将功能代码和库分离,同步功能代码到本地,库不纳入版本管理(一般库极少变动,都是保持不变的,偶尔变,打包到库包即可),然后新建一个项目,初始化,将功能区核心代码上传到gitee.com里面(也可自己搭建git服务器,这是另外一个话题),需要同步的服务器登录,git pull 拉取代码到对应目录,然后每次更新线上代码,git pull即可。
3.代码的自动化部署。自动化部署更复杂一些。一种是自己写个定时脚本更新,例如3分钟自动更新一次代码,这样每次代码会自动同步到服务器里面,但是这样有个巨大的弊端,大部分时候,代码是没有提交的,导致90%以上的git pull命令其实是无效的请求,因为没有代码更新。而如果该服务器部署了10-30个项目,3分钟一个项目需要pull 直接出现的问题,是卡死服务器。等于是要不停的git pull 代码,如果某次代码有个大更新,导致远程响应缓慢,然后会发现自动更新失效。
所以这种方法,对单一项目可以缓解一时的问题,但是对于多项目,问题非常的大。无论是从理论还是实践上看,都是一种比较糟糕的方法。而改进的方法,是提供一个外部的URL页面,外部代码有更新的时候,提交到git上的时候,远程服务器开始更新代码。
- gitee就有webhook概念,就是给你一个webhook钩子,一旦请求那个网址的时候,服务器才会去git pull 而检查是否有webhook 其实只需要创建一个定时任务即可。webhook概念涉及到自动化概念,牵涉东西相对比价多。
服务器的进程管理:
普通的进程管理 ps -ef | grep "www" 即可查看到相关的进程信息
守护进程的管理 执行某个程序,某个进程 python xx.py 如果该程序是一个循环监控的程序,直接导致该进程一直挂在该窗口,如果关闭该窗口,会导致该进程被关闭掉。 nohup python xx.py & 这样可以后台执行逻辑
BT的守护进程管理器, BT后台------商店------进程守护管理器 输入你需要执行的相关命令进程,然后该软件会在你的命令因为意外被杀死后,会自动帮你重启。(我们单一执行的命令,没有管理,可能存在误伤 或者运行错误导致终止的情形,而这个时候,需要一个监控管理程序来执行这个命令)
深化相关链接:
https://blog.csdn.net/weixin_43435138/article/details/139704402 搭建自己的服务器中心