断开SSH后防止正在运行的程序被关闭
概要
我们已经熟练掌握了在断开SSH时保持程序运行的方法:
- 通过
nohup启动程序; - 使用
&让程序运行在后台; - 在
tmux/screen等终端复用器中启动程序。
但倘若我们在程序已经运行之后,才发现程序需要运行非常久,此时除了悔恨,还有补救办法吗?
有,本文将详细介绍补救的方法。
我们已经熟练掌握了在断开SSH时保持程序运行的方法:
nohup启动程序;&让程序运行在后台;tmux/screen等终端复用器中启动程序。但倘若我们在程序已经运行之后,才发现程序需要运行非常久,此时除了悔恨,还有补救办法吗?
有,本文将详细介绍补救的方法。
定时将DirectAdmin数据自动备份至其他机器(如另一个DirectAdmin服务、VPS或FTP中)。
DirectAdmin自带备份能力,但普通账户不支持定时备份,更无法支持异地备份;一些商家的DA支持定时备份插件(JetBackup),无法配置,不支持异地备份。
本文讨论 (1) 定时异地保存JetBackup备份文件的方法;以及(2)定时触发DirectAdmin备份并保存到别处的方法。
DirectAdmin等虚拟主机面板与时俱进,目前不仅支持PHP等脚本程序,也可支持Python甚至NodeJS等常驻内存的服务。常驻内存服务最大优势在于“可将大量数据一次性读入内存,无需重度依赖MySQL、Redis等外部存储”。举例来说,若需记录最近访问网站的IP,传统PHP需要将每次访问网站的IP记录至MySQL或Redis中;而借助Python/NodeJS,则直接设置相关全局变量即可。
本文主要讨论如何在DirectAdmin虚拟主机面板中配置并运行Node.js程序(以Express.js为例)。
Ubuntu 22.04起停止支持gcc-8,仅支持gcc-11及更新的版本,且其GLIBC版本高达2.34(2021年发布),GLIBCXX版本则为3.4.21(2017年,随gcc-5发布)。因此理论上所有早于2021年的系统均无法直接运行,包括不限于Debian 11、Ubuntu 20.04、CentOS 7、AlmaLinux 8等,杀伤力过大。本文给出一种编译方案,让程序可在当代主流系统中运行,如Debian 10、Ubuntu 18.04等。
Float指单精度浮点数,又称为FP32,由IEEE-754定义,大小为32位/4字节;同理,FP16是半精度浮点数也由IEEE-754定义,大小为16位/2字节。两者均用2为底的科学技术法表示数字,因此的格式相仿,均由符号位、指数位(exponent)和尾数位(mantissa)组成,且符号为均占1比特,但FP32的指数位和尾数位各占8比特和23比特;FP16则各占5比特和10比特。
FP32: |符号1b| 指数8b | 尾数23b |
FP16: |符号1b| 指数5b | 尾数10b |
Nvidia GPU、新一代Intel CPU(支持AVX-512)均提供了对FP16运算的原生支持,但AMD芯片、Intel 2022年之前的芯片均无法直接对FP16进行计算,因此我们需要想办法快速将FP16转换为FP32,而后以FP32形式进行计算。
本文记录常见CPU上较优的FP16<->FP32方案。
->