Linux下优雅的让程序后台运行

五、Phoenix Query Server 1、什么是Query Server 1)先认识一下Phoenix重客户端架构 在重客户端中,业务代码调用Phoenix提供的API,Phoenix将SQL转换为Hbase中API,再通过Hbase的客户端调用Hbase的服务,完成数据读写。 通过这个图我们也可以看到,Phoenix的核心功能都是在RegionServer上执行,将处理下推到服务端,以致在大数据情况下查询速度在毫秒级别。 这样的一个架构,业务应用重度融合了Phoenix和hbase客户的逻辑,依赖的jar包都几百M. 2)Ph. 阅读详情
Linux下优雅的让程序后台运行

  假设在终端上启动运行了一个程序,跑了几天,如果不小心把terminal关了,那么程序就会终止,这是SIGHUP信号的原因,即使通过bg置为后台运行同样会如此,应该让程序成为一个daemon,步骤如下:

法1

1.Ctrl+z 暂停程序的运行,可以看到程序的作业号,假设为1;
2.bg %1 置为后台运行;
3. disown -h %1 使其不受终端关闭的影响。


=> The disown command on ksh shell causes the shell not to send a HUP signal to each given job, or all active jobs if job is omitted, when a login shell terminates.

=>The disown command on bash shell can either remove jobs or causes the shell not to send a HUP signal to each given job or all jobs.


实例:

./main.py 之前是终端上正常运行的普通程序。


按上面操作之后,通过 ps -ef | awk '$3 == 1' 命令可以看到程序变成了daemon.



法二:

nohup your_command > /dev/null 2>&1 &

  1. nohup:表示所属终端关闭后,进程不会死掉;
  2. > /dev/null :标准输出重定向到 /dev/null (a dummy device that does not record any output).
  3. 2>&1 :标准出错重定向到标准输出,也到/dev/null
  4. 最后的& :后台任务


参考:

1.http://stackoverflow.com/questions/625409/how-do-i-put-an-already-running-process-under-nohup

2.http://stackoverflow.com/questions/4797050/how-to-run-process-as-background-and-never-die

Linux下使程序优雅的在后台运行 背景 在日常开发工作中,经常会遇到一种场景。 我们希望自己写的程序在后台运行,又希望它足够优雅。 比如说,程序的日志已经打得足够完整了,我们不希望程序在控制台中输出任何东西,影响我们的交互体验。 举栗???? 这边讲一个真实的例子,当我需要部署运行一个jar程序时 原来我执行的是 java -jar hello.jar 现在我们一步步深入 首先,我希望它在后台运行,那我只需要在命令的最后面添加一个 & 符号 java -jar hello.jar & 需要注意的是, 阅读详情

相关推荐

Linux 中启动jar包命令

Linux中启动Jar包命令

qq_37924396的博客 1万+

Linux——让程序在后台运行(四种方法+使用推荐)

第一种方法不推荐使用第二种方法——在需要查看日志的情况下,建议使用(无需在关闭的那种)第三种方法——在开启后,还需要关闭或还需要输入一些命令的时候下第四种方法——虽然需要学习的时间比前面几种长,但是学会之后,会很方便。

Pan_peter的博客 25万+

Centos7.9下安装给Phoenix5.1.2中queryserver.py不存在_安装Phoenix-queryServer6.0.0并启动---大数据之DataX工作笔记003

问题在这里,要把hbase目录下的phoenix-client-hbase-2.4-5.1.2.jar复制到queryServer-6.0.0的目录中,要这样才行。1.首先hbase2.4.11的安装就不说了,这个以前的博文有,然后我们看如何安装Phoenix的queryServer.比如Phoenix的bin目录下直接启动就行,这样是不对的,因为在Phoenix的bin目录下,根本就没有,是这样复制的,把这几个文件复制过去,但是不行,不要用这种方法,这里只是说一下踩过的坑,修改一下两个文件的权限。

添柴程序猿的专栏 1034

python phoenix,phoenix-queryserver启动报错

网上搜索发现python库phoenixdb使用端口8765,所以要安装phoenix-queryserver。3.把phoenix文件夹下的phoenix-client复制到phoenix-queryserver目录下。使用phoenix-queryserver/bin/queryserver.py start启动。大数据作业要把数据存到hbase中,使用python连接phoenix存储。原因:phoenix-client版本不对应。1.下载解压对应phoenix-queryserver。

dkeml的博客 729

python-6-windows和linux中后台运行python代码和操作excel的方式

后台运行python代码

qq_20466211的博客 2480

linux c++ 守护线程,判断程序是否运行,不存在就启动

linux c++ 守护线程,判断程序是否运行,不存在就启动

如何在 Linux 中后台运行进程?

一、后台进程在后台运行进程是 Linux 系统中的常见要求。在后台运行进程允许您在进程独立运行时继续使用终端或执行其他命令。这对于长时间运行的任务或当您想要同时执行多个命令时特别有用。在深入研究各种方法之前,让我们先了解一下什么是后台进程。在 Linux 中,后台进程是指独立于终端运行的进程。执行命令时,它通常在前台运行,这意味着它会占用终端直到完成。另一方面,在后台运行进程允许您执行其他命令,而进程则继续默默运行。

学以致用 知行合一 4267

如何让一个应用程序一直在后台运行? -

如何让一个应用程序一直在后台运行? - C++ Builder - Windows SDK-API.mht

使用nohup后台运行并获取pid

启动 nohup command > command.log 2>&1& echo $! > command.pid 注意: nohup运行后需要按回车键,不然强行ctrl+C会退出。   停止 kill `cat command.pid` 模板 run=my_tcp_demo param="8899 -r" DIR="$( cd "$( di...

weweeeeeeee的博客 1万+

Linux技巧:让进程后台运行

Linux技巧:让进程后台运行,包括一些常用的操作技巧,nohup,setid.screen等。

点云中的Minkowski卷积

一、MinkowskiEngine简介 第一次见到MinkowskiEngine,应该是在两个月之前了,当时也没有去留意这个库。最近读了一些点云的论文,发现还是有不少论文的源码是基于MinkowskiEngine的,包括PointContrast(ECCV 2020),DGR(Deep Global Registration, CVPR 2020),Learning Multiview 3D Point Cloud Registration(CVPR 2020)和FCGF(Fully Convolution

zhulf0804的博客 7906

服务器后台运行python程序

服务器后台运行python程序-python常用命令

qq_43761012的博客 3307

基于OkHttp3+Retrofit2+RxJava3搭建响应式网络框架

本文介绍了一个基于OkHttp3+Retrofit3+RxJava3的响应式网络框架设计。该框架采用分层架构,OkHttp3负责底层网络请求,Retrofit3封装HTTP接口,RxJava3实现响应式流处理。核心亮点包括:1)高度解耦的分层设计;2)统一的异常处理和响应体封装;3)RxJava3实现线程切换和请求管理;4)MVVM架构适配,业务层只需关注数据逻辑。框架提供了完整的实现方案,包括全局配置、拦截器、响应转换、接口声明、仓库封装等组件,并支持生产环境扩展功能如Cookie持久化、Token刷新等

fuge2008的博客 871

Linux信号signal的介绍和示例

如何让程序在后台运行 在之前的章节中,如果要运行程序,在命令提示行下输入程序名后回车,程序被执行,然后等待程序运行完成。在程序运行的过程中,可以用Ctrl+c中止它。 在实际开发中,我们需要让程序在后台运行,不受界面的影响,也不让程序员等待,例如前几章节的socket服务端程序。 如果想让程序在后台运行,有两种方法。 1、加“&”符号...

C语言技术网-码农有道 2164

qt使用qxlsx实现xlsx、xls表格文件快速写入和读取

新年第二篇文章,收尾一个去年计划中发表文章和实现功能。

kbq的博客 1万+

Ansys Zemax与Speos协同设计:HUD系统从光学优化到驾驶模拟的全流程解析

本文详细解析了如何利用Ansys Zemax与Speos这对“黄金搭档”进行HUD系统的协同设计。流程始于Zemax进行核心光学架构与像差优化,奠定性能基础;随后将设计无缝导入Speos,通过HUD光学分析模块进行量化验证;最终在虚拟驾驶环境中进行沉浸式模拟,评估实际视觉体验与系统集成效果,实现从光学优化到驾驶模拟的全流程闭环。

weixin_29201933的博客 273

Linux信号

文章目录一、如何让程序在后台运行1、加“&”符号2、采用fork3、如何让中止后台运行中程序二、signal信号1、信号的基本概念2、信号的类型3、signal库函数4、信号有什么用5、信号应用示例三、发送信号四、课后作业五、版权声明 一、如何让程序在后台运行 在之前的章节中,如果要运行程序,在命令提示行下输入程序名后回车,程序被执行,然后等待程序运行完成,在程序运行的过程中,也可以用Ct...

C语言技术网-码农有道 609

用电脑通过网口控制keysight示波器

Keysight HD304MSO示波器提供1GHz带宽、14位高精度ADC及10.1英寸触控屏,支持50μV低噪声信号捕获和1.3M波形/秒刷新率。配备4通道探头、逻辑分析仪接口及100Mpts存储深度,含故障诊断、FFT等高级功能。通过网线连接电脑安装TightVNC软件(示波器IP为169.254.163.24)可实现远程控制,相比U盘传输更高效。(149字)

johnboat的专栏 1136

linux 运行java jar_linux (运行一个jar 和关闭)

作为一个编程菜鸟,java都还没弄明白,用linux 干嘛。linux众所周知没有图形界面,文件操作果断下了shell. 其他能用到的就是一些简单的命令了,应该也算常用吧。1 使用springboot创建的项目好了就可以直接放到linux 下运行了。前提是linux 装了jdk. 不用装tomcat,因为springboot 自带了。把jar包通过shell 弄到linux 之后。 在lin...

weixin_36446697的博客 370

用RK3588+FPGA搞定Cameralink高速相机?这份保姆级硬件选型与接口配置指南请收好

本文详细介绍了如何利用RK3588与FPGA构建Cameralink高速相机系统,涵盖硬件选型、接口配置及性能优化等关键步骤。通过异构计算架构和精准的带宽分配,实现工业视觉检测和科研成像领域的高效解决方案,特别适合需要实时处理的复杂应用场景。

weixin_30493401的博客 642

【人工智能】《Deep Dive into LLMs like ChatGPT 》—— Andrej Karpathy 第三阶段:强化学习(Reinforcement Learning, RL)

摘要:强化学习(RL)阶段通过让模型自主生成并验证答案,突破SFT阶段的模仿局限,使其在数学、代码等领域形成独特的推理路径。RL流程包括批量生成解答、自动批改筛选正确路径,并采用PPO/GRPO算法优化模型。模型会自发涌现自我检查、回滚等策略,显著提升正确率(如AIME竞赛准确率从15%升至56%)。与SFT模型相比,RL模型具备主动链式思维、验算能力,响应时间更长但效果更优,形成真正的“思考模型”。三阶段对比显示,RL通过可验证题的对错奖励机制,赋予模型超越人类范式的推理能力。

奶爸的编程之路,也就一周冷个三天 149
上一篇: QGraphicsView大于QGraphicsScene时出现滚动条时,改变scene的显示位置
下一篇: 显示调用析构函数被g++编译器优化掉不执行
Maybe______
博客等级 码龄10年 26粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值