OpenNJet下载安装及入门实战教程

一、什么是OpenNJet

  OpenNJet是一款开放原子开源基金会孵化及运营的开源项目。OpenNJet采用C语言实现。是一款高性能、轻量级的WEB应用及代理软件。
   OpenNJet 应用引擎是高性能、轻量级的WEB应用与代理软件。作为云原生服务网格的数据平面,NJet具备动态配置加载、主动式健康检测、集群高可用、声明式API等多种强大功能。通过CoPliot副驾驶服务框架,在隔离控制面和数据面的情况下实现了高可扩展性。NJet应用引擎助力企业实现云原生技术的平滑升级并大幅降低IT运营成本。

在这里插入图片描述

二、OpenNJet下载、安装和启动

官网: https://njet.org.cn/
环境准备: 本次博主采用一台阿里云服务器,系统版本ubuntu18.04

在这里插入图片描述

注:使用自己PC电脑亦可,只要是linux系统

OpenNJet提供了多种快速使用的方法,包括 二进制安装,发行版安装以及源码安装
我们选择最简单的二进制安装方式。想要通过其他方式安装的同学,参考官方教程:https://njet.org.cn/docs/quickstart/

2.1 下载OpenNJet

在这里插入图片描述

按照自己的系统选择对应的版本下载。
我下载的是 njet_2.0.1-1~ubuntu.18.04~bionic_amd64.deb

2.2 安装OpenNJet

  如果使用的是ubuntu系统,下载二进制安装包后可以使用以下命令进行安装

sudo dpkg -i njet_2.0.1-1~ubuntu.18.04~bionic_amd64.deb

如下图所示:

在这里插入图片描述

2.3 启动OpenNJet

  使用二进制包安装OpenNJet后,OpenNJet就会在系统目录/usr/local/njet下生成自己的service,因此,可以使用systemctrl命令控制OpenNJet的启动和停止。


启动OpenNJet服务:

sudo systemctl start njet

停止OpenNJet服务:

sudo systemctl stop njet

查看OpenNJet服务的状态:

systemctl status njet.service 

在这里插入图片描述

2.4 检验OpenNJet是否已经安装成功

个人PC: 直接打开电脑浏览器,在地址栏输入http://localhost:8080/
服务器: 直接打开电脑浏览器,在地址栏输入http://yourServerIP:8080/
如果浏览器跳转以下界面:

在这里插入图片描述

则说明OpenNJet已经安装成功并开始工作。

三、通过 OpenNJet 部署 WEB SERVER

  在上文中我们已经成功安装OpenNJet ,下面我们将使用OpenNJet部署WEB SERVER。在这次实践中博主将把之前发布过的一篇酷炫烟花秀网站部署到线上,来帮助大家熟悉OpenNJet 的基本操作。

3.1 修改OpenNJet 配置文件

  OpenNJet 的主要配置文件为 njet.conf。可以通过修改该文件来配置 OpenNJet。
njet.conf配置文件所在位置为/usr/local/njet/conf目录,先将安装OpenNJet后自动生成的配置文件删除,我们重头开始编写一个简单的配置文件如下:

http {server {listen 80;server_name example.com;location / {root /web/www/html;index index.html;} }
}

各个配置项的作用:

  1. http: 服务块名
  2. listen 80: 表示监听80端口
  3. root /web/www/html : 指定了服务器的根目录,所有请求的文件将从该目录下查找。
  4. index:表示默认页面为index.html,即直接使用IP地址访问时,会默认进入index.html

3.2 将Web程序放置在 /web/www/html之中

  在这次实践中,采用博主之前写过的一篇文章中的代码,来展示使用OpenNJet 部署线上网站的方式。
因此,现在需要做的就是将烟花的代码,上传到服务器中。
我上传的路径为 /web/www/html
上传完成后,在/web/www/html路径下结构如下:

在这里插入图片描述

  其中,fireworks是我们本次想要部署的web项目。

3.3 修改OpenNJet配置文件

  上传完web项目后,如果想要输入IP地址就能直接访问到我们的web项目,就需要修改一下njet.conf中的配置信息。即将root配置项修改为/web/www/html/fireworks,即指定服务器根目录设置为/web/www/html/fireworks
新修改后的配置如下:

http {server {listen 80;server_name example.com;location / {root /web/www/html/fireworks;index index.html;}}
}

  这样,当我们在浏览器地址栏直接输入IP地址进行访问,就会直接打开我们部署的web项目。

在这里插入图片描述

  至此,使用OpenNJet部署一个WEB项目的实践就全部完成了,最后成功将一个炫酷的html web项目部署到了线上,并支持直接通过服务器IP地址进行访问。

四、结语

  OpenNJet作为一款优秀的云原生应用引擎,具备轻量、快速开发、易于集成等优点,即减少了资源占用,部署简单,又能使应用在系统上流畅运行。此外,不仅100%兼容Nginx,还实现了NGINX 云原生功能增强、安全加固和代码重构,利用动态加载机制可以实现不同的产品形态,如Web服务器、流媒体服务器、负载均衡、代理(Proxy)、应用中间件、API网关、消息队列等产品形态等等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/320749.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

02_SpringBoot程序快速启动

目录 打包命令启动启动成功测试结果 打包 点击package打包命令,会生成target目录,目录下会有生成的jar包 命令启动 打开cmd命令窗口,进入子项目的target目录下,输入命令后,回车… java -jar .\note-boot-core-1.0-SNAPSHOT.j…

【强训笔记】day11

NO.1 思路&#xff1a;枚举&#xff0c;设一号大礼包的数量为x&#xff0c;二号大礼包的数量为y&#xff0c;用循环枚举一号大礼包的个数得到二号大礼包的数量&#xff0c;使得某一时刻axby的值最大。 代码实现&#xff1a; #include<iostream>using namespace std;lo…

耐高温轴承:免维护技术的里程碑,润滑领域迎来新篇章

选择适合的耐高温轴承产品型号需要考虑多个因素&#xff0c;包括使用环境、温度要求、负荷大小、转速高低、润滑方式等。以下是一些选择耐高温轴承产品型号的建议&#xff1a; 江苏鲁岳根据使用环境和温度要求选择轴承材料&#xff1a;不同的轴承材料具有不同的耐高温性能。例…

AI原生实践:测试用例创作探索

测试用例作为质量保障的核心&#xff0c;影响着研发-测试-发布-上线的全过程&#xff0c;如单元测试用例、手工测试用例、接口自动化用例、UI 自动化用例等&#xff0c;但用例撰写的高成本尤其是自动化用例&#xff0c;导致了用例的可持续积累、更新和迭代受到非常大制约。长久…

10.Java对象内置结构

文章目录 Java对象内置结构1.Java对象的三个部分1.1.对象头1.2.对象体1.3.对齐字节 2.对象结构中核心字段的作用2.1.MarkWord(标记字)2.2.Class Pointer(类对象指针)2.3.Array Length(数组长度)2.4.对象体2.5.对齐字节 3.Mark Word的结构信息3.1.不同锁状态下的Mark Word字段结…

【Redis】RDB持久化和AOF 持久化

分布式缓存 单点 Redis 的问题 数据丢失&#xff08;持久化&#xff09;并发能力不如集群&#xff08;主从集群、读写分离&#xff09;Redis宕机导致服务不可用&#xff08;Redis哨兵&#xff09;存储能力差&#xff08;分片集群&#xff09; Redis 持久化 RDB 持久化 什么…

centos7安装真的Redmine-5.1.2+ruby-3.0.0

下载redmine-5.1.2.tar.gz&#xff0c;上传到/usr/local/目录下 cd /usr/local/ tar -zxf redmine-5.1.2.tar.gz cd redmine-5.1.2 cp config/database.yml.example config/database.yml 配置数据连接 #编辑配置文件 vi config/database.yml #修改后的内容如下 product…

MySQL之查询 拿下 * 。*

DQL数据查询语言 对上述的的查询操作进行代码演示&#xff08;续上一篇学生表代码进行处理&#xff09; 下面是上一篇的代码分享 下面进行简单的查询操作 字符串如果强行进行算数运算默认只为0 查询时常用的单行函数列举 未完待续

控制台调试 hover 后才出现的元素

调试 hover后才出现的元素 打开开发者工具&#xff0c;鼠标放在hover时才出现的元素上&#xff0c;然后点击右键&#xff1b; 不要选中任何选项&#xff0c;将鼠标移动到开发者工具的调试面板中&#xff1b; 按下N键&#xff0c;此时悬浮的元素不会消失&#xff0c;定位成功。…

【时序大模型总结】学习记录(1)

1.TimeGPT-1 思路&#xff1a;在来自不同领域的大量数据上训练模型&#xff0c;然后对未见过的数据产生零样本的推断。 作者对TimeGPT进行了超过1000亿个数据点的训练&#xff0c;这些数据点都来自开源的时间序列数据。该数据集涵盖了广泛的领域&#xff0c;从金融、经济和天气…

17.Blender RC大佬EEVEE皮肤节点预设导入

如何添加节点预设 在底下的左下角打开Geometry Node Editor 选中正方体&#xff0c;点击新建 当鼠标指针在两个模块之间&#xff0c;是十字的样子时 可以拖出一个新的板块 然后打开文件浏览器 找到节点预设然后拖入到底下的节点编辑界面就可以了或者是blend文件&#xf…

KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记13 - STM32的SDIO学习5 - 卡的轮询读写擦

KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记13 - STM32的SDIO学习5 - 卡的轮询读写擦 一、前情提要二、目标三、技术方案3.1 读写擦的操作3.1.1 读卡操作3.1.2 写卡操作3.1.3 擦除操作 3.2 一些技术点3.2.1 轮询标志位的选择不唯一3.2.2 写和擦的卡状态查询3.2.3 写的速度 四、代…

Unity之ShaderGraph入门简介与配置

前言 ShaderGraph是Unity的一个可视化着色器编辑工具,它允许开发者在不编写代码的情况下创建复杂的着色器效果。ShaderGraph提供了一个直观的图形界面,用户可以通过拖拽节点并连接它们来构建自定义的着色器。用户可以在ShaderGraph中使用各种节点,如数学运算、纹理采样、颜…

SeetaFace6人脸检测C++代码实现Demo

SeetaFace6包含人脸识别的基本能力&#xff1a;人脸检测、关键点定位、人脸识别&#xff0c;同时增加了活体检测、质量评估、年龄性别估计&#xff0c;并且顺应实际应用需求&#xff0c;开放口罩检测以及口罩佩戴场景下的人脸识别模型。 官网地址&#xff1a;https://github.co…

【漏洞复现】用友时空KSOA linkadd接口处存在 SQL注入漏洞

免责声明&#xff1a;文章来源互联网收集整理&#xff0c;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该…

2024高校网络安全管理运维赛wp

文章目录 misc签到钓鱼邮件识别easyshellSecretDBGatewayzipApachef for r webphpsqlMessy Mongo misc 签到 钓鱼邮件识别 两部分解base64&#xff0c;各一个flag 后面没有什么地方有有用信息了&#xff0c;根据题目钓鱼邮件&#xff0c;可能第三段flag就跟DMARC、DKIM 和 SP…

母婴店运用商城小程序店铺的效果是什么

母婴市场规模高&#xff0c;还可与不少行业无缝衔接&#xff0c;尤其是以90后、00后为主的年轻人&#xff0c;在备孕生育和婴儿护理前后等整体流程往往不惜重金且时间长&#xff0c;母婴用品无疑是必需品&#xff0c;商家需要多方面拓展全面的客户及打通场景随时消费路径。 运…

视频号好物分享副业课,视频剪辑带货玩法(12节课)

详情介绍 课程内容&#xff1a; 第1节-为什么要做视频号好物分享.mp4 第2节-Tok海外素材好物分享号的变现逻辑.mp4 第3节-好物分享的细分赛道.mp4 第4节-视频号使用老号还是新号,mp4 第5节-开通橱窗的条件与挂车条件.mp4 第6节-好物分享账号的搭建设置,mp4 第7节-手机版…

数据结构——图的基础知识与其表示

一&#xff1a;定义 由顶点的集合和边的集合组成&#xff1b;常以 G(V,E) 表示&#xff0c;G 代表图&#xff0c;V代表 顶点的集合&#xff0c;E代表边的集合&#xff1b; 如图&#xff1a; 在G1图中&#xff0c;有 0~4 五个顶点&#xff0c;有 0-1&#xff0c;0-2&…

【LeetCode刷题记录】105. 从前序与中序遍历序列构造二叉树 106. 从中序与后序遍历序列构造二叉树

105 从前序与中序遍历序列构造二叉树 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,1…