您现在的位置是:首页 > 文章详情

OpenNJet v4.0.1.0 已经发布,云原生应用引擎

日期:2025-11-04点击:4

OpenNJet v4.0.1.0 已经发布,云原生应用引擎

此版本更新内容包括:

功能优化


  • 规范modules下各个模块的config 文件使用
  • 动态增加VS时,如果是新增端口,可以在listen_option中设置配置(目前不支持quic)
  • 优化event框架,提高消息处理速度
  • 优化njetmq编译脚本
  • proto_server模块修改为动态模块

Bug fix


  • http/stream rr 算法backup 的tried 数组的越界问题
  • http/stream hash,random 算法遍历peers时越界问题
  • stream upstream zone 的内存分配失败时,service 字段的内存泄漏问题。
  • Goaccess 模块移除 njt_dynlog_parser.c njt_dynlog_parser.h 两个文件
  • libtcc1.a 跨平台拷贝路径问题
  • 删除Dockerfile.ubuntu build_k8s.sh njet_sidecar.conf 多余文件
  • telemetry webserver模块编译告警问题
  • 解决不规范使用njt_cycle->log的问题
  • 编译脚本部分单词拼写错误问题
  • http cache 模块内存泄漏问题
  • 解决njetmq未订阅的retain消息会导致内存泄露的问题
  • 解决了循环添加动态location 多个然后再动态删除location时broker 进程 core的问题
  • 健康检查配置前缀匹配导致认为已存在问题
  • 健康检查部分代码分配使用了错误的结构长度问题
  • 修复在Kunpeng 920 CPU上,rsync模块加载不成功的问题
  • 解决代码在不同GCC下编译代码的兼容性问题

遗留已知问题


  • tcp流量劫持基于iptables nat表prerouting添加规则,只针对外部访问(非本机ip)的数据做流量劫持
  • HA/MA 配置同步关于命令式api 动态删除location消息同步存在问题
  • 应用加速功能,删除location后本地缓存文件没有立马同步清理
  • 配置沙箱进程,在NJet 可执行文件热升级时,无法在旧的沙箱进程退出后,再启动新的配置沙箱
  • 动态VS,添加VS时 ,需要存在最少一个静态VS,如果没有静态VS存在,会报错返回
  • 动态VS,添加VS时 ,对新增的监听端口,listen_option目前不支持quic选项,udp需要在addr_port选项中设置
  • 动态VS,不支持zone、 location、ssl_ocsp、ssl_stapling、quic 指令
  • 动态VS,不支持动态创建 新的error_log、access_log 文件
  • 动态location,不支持zone 指令
  • 动态SSL证书添加时必须有初始证书,通过动态VS添加的ssl server,如果未配置初始证书,通过动态ssl接口添加证书会添加失败
  • 显示location的api,配置if和limit_except时,存在显示异常

发行版安装


centos发行版

安装

#生成njet.repo
sudo bash -c 'cat > /etc/yum.repos.d/njet.repo <<EOF
[OpenNJet]
name=OpenNJet
baseurl=https://njet.org.cn/download/linux/centos/\$releasever/\$basearch/
enabled=1
gpgcheck=1
gpgkey=https://njet.org.cn/download/linux/centos/RPM-GPG-KEY-OpenNJet
EOF'
#更新yum 缓存
yum clean all
yum makecache #类似于 apt update​

yum install njet
yum install njet-otel
systemctl start njet
 

升级

注意:升级NJet4.0.1.0 版本及之后,升级时默认保留ctrl_kv.conf, goaccess.conf,njet.conf,njet_ctrl.conf这4个文件的原内容,但是如果升级到4.0.1.0 之前的需要先备份配置文件;html 任何版本都需要备份

sudo cp -r /usr/local/njet/conf /usr/local/njet/conf_backup
sudo cp -r /usr/local/njet/html /usr/local/njet/html_backup 
sudo yum update njet  #升级到最新版本
 

ubuntu发行版

安装

 #添加gpg 文件
 sudo apt-get update
 sudo apt-get install ca-certificates curl gnupg
 sudo install -m 0755 -d /etc/apt/keyrings
 curl -fsSL https://njet.org.cn/download/linux/ubuntu/gpg | sudo gpg --dearmor -
o /etc/apt/keyrings/njet.gpg
 sudo chmod a+r /etc/apt/keyrings/njet.gpg
 
 #添加APT 源
 echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/njet.gpg] https://njet.org.cn/download/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/njet.list > /dev/null
sudo apt-get update
#安装及启动
 sudo apt-get install njet
 sudo systemctl start njet
 

升级

sudo cp -r /usr/local/njet/conf /usr/local/njet/conf_backup
sudo cp -r /usr/local/njet/html /usr/local/njet/html_backup
sudo apt-get update
sudo apt  install --only-upgrade njet
 

二进制安装


rpm包

#安装
yum localinstall ./njet-4.0.1.0-1.ky10.x86_64.rpm
systemctl start njet
systemctl stop njet

#升级
sudo cp -r /usr/local/njet/conf /usr/local/njet/conf_backup
sudo cp -r /usr/local/njet/html /usr/local/njet/html_backup
yum remove njet
yum localinstall ./njet-4.0.1.0-1.ky10.x86_64.rpm
 

deb包

#安装
dpkg -i njet_4.0.1.0-1~ubuntu.18.04~bionic_amd64.deb​
systemctl start njet 
systemctl stop njet 

#升级
sudo cp -r /usr/local/njet/conf /usr/local/njet/conf_backup
sudo cp -r /usr/local/njet/html /usr/local/njet/html_backup
dpkg -i njet_4.0.1.0-1~ubuntu.18.04~bionic_amd64.deb​
 

docker方式运行


可使用如下命令启动运行: docker run -d --rm --privileged tmlake/njet:4.0.1.0 详细运行方法参考: https://njet.org.cn/cases/njet-docker/

下载列表安装包说明:


otel安装包为opentelemetry模块的安装包(如果需要该功能,从下载连接选择对应的安装包安装即可) captcha安装包是动态验证码模块的安装包(如果需要该功能,从下载连接选择对应的安装包安装即可) OpenNJet ubuntu deb安装包基于18.04版本编译,可在ubuntu20、ubuntu22上安装使用

  • njet: OpenNJet 安装包

    • .deb 适用ubuntu系统
    • el7.x86_64.rpm 适用centos系统
    • .ky10.x86_64.rpm 适用基于x86_64的kylin麒麟系统
    • .an8.loongarch64.rpm 适用龙芯系统
    • .ky10.aarch64.rpm 适用基于Kunpeng-920的kylin麒麟系统
  • NJet-comm-modules: OpenNJet 社区模块安装包

    • .deb 适用ubuntu系统
    • el7.x86_64.rpm 适用centos系统
    • .ky10.x86_64.rpm 适用基于x86_64的kylin麒麟系统
  • njet_python_wsgi: 支持python脚本及wsgi应用的模块 安装包

    • .deb 适用ubuntu系统
    • el7.x86_64.rpm 适用centos系统
    • .ky10.x86_64.rpm 适用kylin麒麟系统
  • njet_otel: telemetry 模块(链路追踪)安装包

    • .deb 适用ubuntu系统
    • el7.x86_64.rpm 适用centos系统
    • .ky10.x86_64.rpm 适用基于x86_64的kylin麒麟系统
  • njet_captcha: 频繁访问限制模块 安装包

    • .deb 适用ubuntu系统
    • el7.x86_64.rpm 适用centos系统
    • .ky10.x86_64.rpm 适用kylin麒麟系统
  • portal_1.0.2_noarch.npk: Portal 应用管理模块(系统无关)

  • ssh_remote_mod.so: Portal 需要的Lua 额外模块(系统无关)

  • simulate-app_1.0.2.npk: NJet模拟环境应用(系统无关)

  • cert-manager: 支持ACME协议,实现自动证书管理

    • cert-manager-arm64 适用arm64
    • cert-manager 适用x86-64
    • cert-manager-loongarch64 适用LoongArch

详情查看:https://gitee.com/njet-rd/njet/releases/v4.0.1.0

原文链接:https://www.oschina.net/news/381459
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章