进程介绍

limin@limin-B660-VH:/usr/local/njet$ ps -ef |grep njet
njet      301519       1  0 09:29 ?        00:00:00 njet: master process /usr/local/njet/sbin/njet -p /usr/local/njet -c conf/njet.conf
njet      301520  301519  0 09:29 ?        00:00:15 njet: worker process
njet      301521  301519  0 09:29 ?        00:00:15 njet: worker process
njet      301522  301519  0 09:29 ?        00:00:15 njet: worker process
njet      301536  301519  0 09:29 ?        00:00:29 njet: copilot process /usr/local/njet/conf/njet_ctrl.conf
njet      301537  301519  0 09:29 ?        00:00:09 njet: copilot process 
njet      301538  301519  0 09:29 ?        00:00:46 njet: copilot process /usr/local/njet/conf/goaccess.conf
root      301539  301519  0 09:29 ?        00:00:15 njet: privileged agent process
limin     325081  306781  0 14:41 pts/2    00:00:00 grep --color=auto njet

启动njet 后,进程包包含 1 个 Master 进程为核心中枢,多个 Worker 进程处理业务,以及三类辅助进程组成的 Copilot 系统。

Master 进程

  • 核心作用:系统的核心控制中枢

  • 关键功能:

    • 加载主配置文件 njet.conf
    • 管理所有子进程的生命周期(启停/重启)
    • 监听并响应系统信号(如平滑重启指令)
  • 进程特征

    • PPID=1 的系统级守护进程
    • 所有其他进程的父进程(PPID指向Master)

    业务处理层

Worker 进程

  • 核心作用:网络流量处理器
  • 关键功能:
    • 直接处理 HTTP 请求和网络 I/O 事件
    • 执行内容过滤、负载均衡等核心业务逻辑
  • 架构优势
    • 多进程模型避免单点故障
    • 独立进程空间保障安全隔离

Copilot 辅助进程

通过 helper指令动态加载模块

copilot:ctrl(控制中枢)

  • 核心作用:系统控制台
  • 核心职责:
    • 全局配置管理(热加载配置)
    • 组件状态监控与启停控制
    • 处理用户 API 指令
    • 收集系统指标生成告警(CPU/内存/流量)

copilot:broker(消息代理

  • 核心作用:进程间通信枢纽
  • 核心职责:
    • 实现类 Kafka/mqtt 的消息队列
    • 路由外部请求和内部组件通信
    • 提供高吞吐异步处理能力

copilot:goaccess(监控分析)

  • 核心作用:可视化数据
  • 核心职责:
    • 实时日志解析(基于 GoAccess)
    • 生成请求量/地理分布/热门 URL 报表
    • 关联日志与告警辅助故障定位
    • 通过 Dashboard 识别异常流量

Privileged Agent

  • 核心作用:安全隔离桥
  • 关键特性:
    • 唯一以 root 权限运行的进程
    • 处理需要特权的系统级操作
  • 核心职责:
    • 动态配置的校验网关(所有配置先经其过滤)
    • 用户请求与系统资源的安全桥接
    • 敏感操作的安全沙箱隔离