OpenNJet:基于 NGINX 的面向互联网和云原生的运行时组态服务程序

✨功能特性

源码下载

OpenNJet 主库地址:

https://gitee.com/njet-rd/njet

安装

Quic Start:

提供基于 dockerfile 文件的形式进行快速编译

依赖:

  1. docker 环境(需要在编译机器安装docker并启动docker)

步骤:

  1. 下载 OpenNJet 源码
  2. 执行如下命令:

docker build -t njet_main:v1.0 .

​ docker run -v pwd:/njet_main njet_main:v1.0 /bin/bash -c "cd /njet_main && sh build_njet.sh"

  1. 编译完后,在 objs 目录下,主要包含 njet 文件和相关的 so 文件

​ njet 可执行文件

​ *.so 相关模块对应的动态库文件

FAQ

什么是应用引擎?


应用引擎是面向互联网和云原生应用提供的运行时组态服务程序。具备环境感知、安全控制、加速优化等能力,一般呈现为Web服务、流媒体服务、代理(Proxy)、应用中间件、API网关、消息队列等产品形态。

  • 互联网时代国际主流的应用引擎包括:NGINX, Apache, IIS 等。
  • 在云原生时代有许多新的轻量级应用引擎涌现,比较流行的云原生应用引擎包括: NGINX(C语言 ) ,Envoy(C++语言) , Linkerd(Rust语言) 等。

在云原生架构中,应用引擎除了提供南北向通信网关的功能以外,还提供了服务网格中东西向通信、透明流量劫持、熔断、遥测与故障注入、链路追踪、蓝绿发布等新功能特性,因此应用引擎在云原生架构中发挥着更为关键的作用。

图1 云原生应用引擎架构

应用引擎的产品形态

图2 应用引擎产品形态

如上图所示,应用引擎产品形态包括Web服务器、流媒体服务器、应用服务器和代理服务器等。其中代理服务器又可分为正向代理、反向代理、边车和消息代理等产品。

项目地址:https://github.com/Gebonaa/OpenNJet