今天看宝塔面板后台 发现内存占用高达16GB ,就简单一个wp程序 占用这么大的内存?
进程管理器发现 一个 systemd-journald的进程占用内存高达2.5GB 真是牛x
百度下这个进程信息
systemd-journald
背景
过去只有 rsyslogd 的年代中,由于 rsyslogd 必须要开机完成并且执行了 rsyslogd 这个 daemon 之后,登录文件才会开始记录。所以,核心还得要自己产生一个 klogd 的服务, 才能将系统在开机过程、启动服务的过程中的信息记录下来,然后等 rsyslogd 启动后才传送给它来处理~
现在有了 systemd 之后,由于这玩意儿是核心唤醒的,然后又是第一支执行的软件,它可以主动调用 systemd-journald 来协助记载登录文件~ 因此在开机过程中的所有信息,包括启动服务与服务若启动失败的情况等等,都可以直接被记录到 systemd-journald 里头去!
不过 systemd-journald 由于是使用于内存的登录文件记录方式,因此重新开机过后,开机前的登录文件信息当然就不会被记载了。 为此,我们还是建议启动 rsyslogd 来协助分类记录!也就是说, systemd-journald 用来管理与查询这次开机后的登录信息,而 rsyslogd 可以用来记录以前及现在的所以数据到磁盘文件中,方便未来进行查询喔!
虽然 systemd-journald 所记录的数据其实是在内存中,但是系统还是利用文件的型态将它记录到 /run/log/ 下面! 不过我们从前面几章也知道, /run 在 CentOS 7 其实是内存内的数据,所以重新开机过后,这个 /run/log 下面的数据当然就被刷新,旧的当然就不再存在了!
systemd-journald 作用
systemd-journald 是一个收集并存储各类日志数据的系统服务。 它创建并维护一个带有索引的、结构化的日志数据库, 并可以收集来自各种不同渠道的日志:
1>通过 kmsg 收集内核日志
2>通过 libc 的 syslog(3) 接口收集系统日志
3>通过 本地日志接口 sd_journal_print(3) 收集结构化的系统日志
4>捕获服务单元的标准输出(STDOUT)与标准错误(STDERR)
5>通过内核审计子系统收集审计记录
简单说就是一个记录某些没太大用处日志的进程 我终止了 没什么影响