欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux &、nohup与Systemctl的使用

程序员文章站 2022-09-25 20:37:01
&、nohup与systemd 当客户端浏览器第一次访问服务器时,服务器为每个浏览器创建不同的httpsession对象。在服务器端使用request.getsessio...

&、nohup与systemd

当客户端浏览器第一次访问服务器时,服务器为每个浏览器创建不同的httpsession对象。在服务器端使用request.getsession()方法来获得httpsession对象,并以此来使用httpsession接口为我们提供的方法。

session什么时候失效?

  • 服务器会把长时间没有活动的session从服务器内存中清除,此时session便失效。tomcat中session的默认失效时间为20分钟。
  • 调用session的invalidate方法。
  • 关闭浏览器,结束session。

1. 使用&后台运行程序:

结果会输出到终端

使用ctrl + c发送sigint信号,程序免疫

关闭session发送sighup信号,程序关闭

2. 使用nohup运行程序:

结果默认会输出到nohup.out

使用ctrl + c发送sigint信号,程序关闭

关闭session发送sighup信号,程序免疫

因此,平日线上经常使用nohup和&配合来启动程序:可以同时免疫sigint和sighup信号

3. systemctl:

systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。

在终端中输入 ps ax | grep systemd,看到第一行,其中的数字 1 表示它的进程号是1,也就是说它是 linux 内核发起的第一个程序。因此,内核一旦检测完硬件并组织好了内存,就会运行 /usr/lib/systemd/systemd 可执行程序,这个程序会按顺序依次发起其他程序。( 在还没有 systemd 的日子里,内核会去运行 /sbin/init,随后这个程序会在名为 sysvinit 的系统中运行其余的各种启动脚本。)

linux &、nohup与Systemctl的使用

tip:这个名字末尾的 .service 后缀是可以省略的,因为systemctl默认的后缀就是 .service。关于unit文件后缀的含义,会在后续进阶篇的文章里详细说明。

systemd会自动找到 /usr/lib/systemd/system 目录中的 .service 文件,并启动其中定义的服务。如果之前创建的unit文件是放在其他目录下的,这里需要使用文件的完整路径。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。